Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1760to1764
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Variable var in FormulaLocal verwenden

Variable var in FormulaLocal verwenden
04.06.2020 11:01:57
Daniel
Hallo Zusammen,
ich erzeuge über ein Makro eine zusätzliche Spalte in meiner Tabelle und möchte die Daten aus einer Spalte in eine andere übertragen und dabei einen Zusatz hinzufügen.
Per Formel wäre das

= "Zusatz-" & "B2"

Bei meinem Makro funktioniert das allerdings nicht wie gewünscht.
Ich habe nun alles mögliche probiert … mit Klammern, ohne, Klammern an verschiedenen Stellen;
aber irgend etwas übersehe ich.
Vielleicht findet euch jemand den Fehler und kann mir helfen
Bei dieser Variante erhalte ich als Ergebnis: Zusatz-B2:B38 ( habe 38 Zeilen in meinem Testordner )
Ich schaffe es aber nicht, dass in C2 dann Zusatz und die Daten von B2 stehen, in C3 das aus B3 _
usw.

Sub spalteneu()
Columns("C").Select
Selection.Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C1").Select
ActiveCell.FormulaR1C1 = "Bestellnummer"
Dim var As Long
var = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For i = 1 To var
Sheets("Orders").Range("C2:C" & var).FormulaLocal = "Zusatz-" & "B2:B" & var
Next i
Application.CutCopyMode = False
End Sub

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Variable var in FormulaLocal verwenden
04.06.2020 11:34:06
MCO
Hallo Daniel!
Versuch das mal...
Sub spalteneu()
Dim var As Long
Columns("C").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C1") = "Bestellnummer"
var = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To var
Sheets("Orders").Range("C" & var).FormulaLocal = "Zusatz-" & Range("B" & var)
Next i
End Sub
Gruß, MCO
AW: Variable var in FormulaLocal verwenden
04.06.2020 11:41:28
MRUTOR
Hallo,
ich glaube nicht, dass das so sein soll. Dein Ansatz ist zwar soweit richtig. Aber wofuer das i, wenn es nicht verwendet wird. Das soll sicher folgendermassen, denn var ist ja die letzte verwendete Zeile. Und ausserdem fehlt noch ein = vor der Formel:

Sub spalteneu()
Dim var As Long
Columns("C").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C1") = "Bestellnummer"
var = ActiveSheet.Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To var
Sheets("Orders").Range("C" & i).FormulaLocal = "=Zusatz-" & Range("B" & i)
Next i
End Sub

Gruss Tor
Anzeige
AW: Variable var in FormulaLocal verwenden
04.06.2020 11:49:56
Daniel
Hallo Tor,
ja das war mein erster Ansatz mit i ; aber auch damit hatte ich es nicht hinbekommen, weswegen ich dachte, es wäre var
Bei Deiner Variante bekomme ich einen 1004 Anwendungsfehler
AW: Variable var in FormulaLocal verwenden
04.06.2020 12:02:23
MRUTOR
Hallo Daniel,
also bei mir funktioniert der Code wie folgt. Voraussetzung ist jedoch, dass in der Spalte B auch was steht, sonst bekommst du den von dir angesprochenen 1004 Anwendungsfehler. Habe ich aber auch noch abgefangen. Wenn in B leer ist, dann passiert in dieser Zeile nichts:

Sub spalteneu()
Dim var As Long, i As Long
Columns("C").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
Range("C1") = "Bestellnummer"
var = Sheets("Orders").Cells(Rows.Count, 1).End(xlUp).Row
For i = 2 To var
If Sheets("Orders").Range("B" & i)  "" Then
Sheets("Orders").Range("C" & i).Formula = "Zusatz-" & Range("B" & i)
End If
Next i
End Sub

Gruss Tor
Anzeige
AW: Variable var in FormulaLocal verwenden
04.06.2020 12:05:02
Daniel
Ja, genau das habe ich bemerkt, dass bei leeren Zellen "nix" geht;
deswegen habe ich es einfach mal ohne FormulaLocal probiert
Vielen Dank für Deine Mithilfe !
Ich muss jetzt erstmal Pause machen, hab schon achteckige Augen :-)
AW: Variable var in FormulaLocal verwenden
04.06.2020 11:44:42
Daniel
Hi,
das geht leider auch nicht ;
Hier erscheint Zusatz- in den Zellen aber nichts weiter

Sheets("Orders").Range("C2:C" & var).FormulaLocal = "Zusatz-" & Range("B" & var)
Hiermit bleiben die Zellen leer

Sheets("Orders").Range("C" & var).FormulaLocal = "Zusatz-" & Range("B" & var)
Hiermit bekomme ich einen Laufzeitfehler 13 - Typen unverträglich

Sheets("Orders").Range("C2:C" & var).FormulaLocal = "Zusatz-" & Range("B2:B" & var)
Irgendetwas übersehe ich, aber ich hab keinen Plan mehr grade …
hänge jetzt seit 2 Stunden an dem Ding und bekomme es nicht hin.
Anzeige
AW: Variable var in FormulaLocal verwenden
04.06.2020 12:02:52
Daniel
GELÖST …
ich habs ; ganz anderer Ansatz … anstelle der Formula Local arbeite ich nur mit der Range

Range("C" & i) = "Zusatz-" & Range("B" & i)

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige