Clever-Excel-Forum

Normale Version: Formel per VBA einfügen
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo Forum,

ich suche eine Möglichkeit folgende Formel über VBA per Klick auf eine Schaltfläche in die Aktive Zelle einzufügen.

Code:
=WENNFEHLER(SVERWEIS(A3;Tabelle2!$A$2;$B$250;2;Falsch);"prüfen")

Besten Dank im Voraus
Omron2003
Hallo Omron2003,

probier mal so:
Code:
Private Sub Button1_Click()

ActiveCell.FormulaR1C1 = "=IFERROR(VLOOKUP(RC[-1],Tabelle2!R2C1:R250C2,2,0),""prüfen"")"

End Sub
Diese Formel bezieht den SVerweis auf die Zelle links von der aktiven Zelle.

In deiner Formel ist übrigens ein Fehler. Die beiden Zellen im SVerweis müssen mit ":" getrennt werden.

Gruß,
Lutz
Hallo Lutz,

Sorry für den Schreibfehler.

Dein Code funktioniert besten!

Nochmals besten Dank für die schnelle Hilfe.

Gruß
Omron2003
Hallo,

es wird mir immer ein Rätsel bleiben, warum man Formeln per VBA in eine Liste eintragen möchte. Man kann doch die Berechnungen gleich mit VBA ausführen und nur das Ergebnis eintragen.
Hallo Klaus-Dieter,

das kommt aus meiner Sicht immer auf den Einzelfall an.

In der Regel gebe ich dir Recht, allerdings nutze ich in einigen Reports auch die Möglichkeit Formeln per VBA in Zellen zu schreiben. Damit behalte ich die Möglichkeit, Grunddaten manuell zu korrigieren, ohne dass ich das Makro nochmals laufen lassen muss (wobei das dann wieder andere Werte ändern würde, die ich nicht geändert haben möchte...).

Gruß,
Lutz
Zitat:Damit behalte ich die Möglichkeit, Grunddaten manuell zu korrigieren, ohne dass ich das Makro nochmals laufen lassen muss (wobei das dann wieder andere Werte ändern würde, die ich nicht geändert haben möchte...).
Wir können das nicht nachvollziehen; dann ist es kaum ein/kein  'Argment' für deine Aussage.
Moin,

wenn du nicht weist, wie du deine Formel in VBA schreiben sollst, kannst du die Formel in Zelle C4 im aktuellen Tab eingeben,

z.B. =WENNFEHLER(SVERWEIS(A3;Tabelle2!$A$2;$B$250;0);"prüfen")

wechselst dann in den VBA-Editor,

öffnest dann das Direktfenster und schreibst dort z.B.
?range("C4").Formula

ENTER drücken

dortkannst du die Formel sehen die in Zelle C4 steht

=IFERROR(VLOOKUP(A3,Tabelle2!$A$2,$B$250,0),"prüfen")