Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

VBA Formel in Code
#1
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?
Antworten Top
#2
Hallo, :19:

Hochkommas innerhalb müssen gedoppelt werden:

Code:
.Range("AD2").FormulaLocal = "=verketten(F2&"" ""&H2)"
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • StrammerMax
Antworten Top
#3
Excel-VBA für Dummies: Amazon.de: John Walkenbach, Judith Muhr: Bücher
Zum übersetzen von Excel Formeln:

http://dolf.trieschnigg.nl/excel/index.p...gids=en+de
[-] Folgende(r) 1 Nutzer sagt Danke an snb für diesen Beitrag:
  • StrammerMax
Antworten Top
#4
Vielen Dank Case.

Hat sich erledigt.
Antworten Top
#5
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)"
________
Servus
Case
[-] Folgende(r) 1 Nutzer sagt Danke an Case für diesen Beitrag:
  • StrammerMax
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste