Clever-Excel-Forum

Normale Version: VBA Formel in Code
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hey Leute,

ich möchte per VBA eine Formel in eine Zelle auf einem Arbeitsblatt schreiben. 

Zitat:Public Sub SchreibeFormel()
 Dim oBlatt As Worksheet
 Set oBlatt = ThisWorkbook.Worksheets("Blatt1")
 With oBlatt
  .Range("AD2").FormulaLocal = "=verketten(F2&" "&H2)"
 End With
 Set oBlatt = Nothing
End Sub

In der Spalte mit der Formel meckert er aber und sagt, dass er das Anweisungsende erwartet. 
Was mache ich falsch? Bzw. was muss ich machen damit es funktioniert?

Ich verkette zwei Werte aus dem Arbeitsblatt und möchte dazwischen ein Leerzeichen.

Das Problem ist das Leerzeichen dazwischen - ich weiß aber nicht wie ich das in VBA abbilden muss damit es funktioniert. In eckige Klammern?
Hallo, :19:

Hochkommas innerhalb müssen gedoppelt werden:

Code:
.Range("AD2").FormulaLocal = "=verketten(F2&"" ""&H2)"
Vielen Dank Case.

Hat sich erledigt.
Hallo, :19:

das "FillDown" brauchst du nicht.

Entweder bei festem Wert...

Code:
.Range("AD2:AD13").FormulaLocal = "=verketten(F2&"" ""&H2)"

... oder bezogen auf die Eintragslänge in Spalte H...

Code:
.Range("AD2:AD" & .Cells(.Rows.Count, 8).End(xlUp).Row).FormulaLocal = "=verketten(F2&"" ""&H2)"