Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1912to1916
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

Schreibweise der Formel

Schreibweise der Formel
12.01.2023 14:42:28
demerzel78
Hallo Forum,
ich möchte per VBA in eine Zelle das schreiben:
ActiveCell.FormulaR1C1 = "=RC[-3]*R32752C6"
wobei ich für
RC[-3]
und für
32752
jeweils eine Variable verwenden möchte. Wenn ich es so versuche:
ActiveCell.FormulaR1C1 = "=" & Round(varFuell, 5) & "*R" & LZ & "C[6]"
bekomme ich einen Laufzeitfehler(1004). Ich glaube, dass es an den Hochkommas liegt, ich weiß aber nicht, welche ich alles doppelt setzten muss. Habe schon alles versucht und bekomme immer wieder den Fehler.
In der Variable varFuell steht zB. 0,0399999999999636 und in der Variable LZ steht zB. 32658 drin.
Könnt ihr mir bitte bei dem Problem helfen, danke.
Grüße demerzel

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schreibweise der Formel
12.01.2023 14:55:56
Daniel
Hi
Die Anführungszeichen sehen korrekt aus.
das Problem dürfte sein, das VBA manchmal etwas inkonsequent ist, wenn es darum geht Zahlen in Texte zu wandeln.
der Wert, der bei Round(varFuell, 5) rauskommt, muss für die Formel in einen Text gewandelt werden.
die automatische Textumwandlung verwendet hierbei das deutsche Komma aus den Ländereinstellungen: 0,04
Das .FormulaR1C1 benötigt jedoch den Punkt also Dezimalzeichen: 0.04
also so:

ActiveCell.FormulaR1C1 = "=" & Replace(Round(varFuell, 5), ",", ".") & "*R" & LZ & "C[6]"
ich programmiere sowas meistens so, weil es übersichtlicher ist und man weniger Ärger mit den Hochkommas hat, vorallem bei längeren Formeln:

FO = "=xxx*RyyyC6"
FO = Replace(FO, "yyy", LZ)
FO = Replace(FO, "xxx", Replace(Round(varFuell, 5), ",", "."))
ActiveCell.Formula = FO
ob jetzt C6 oder C[6] richtig ist, musst du wissen.
Gruß Daniel
Anzeige
AW: Schreibweise der Formel
12.01.2023 15:11:08
demerzel78
Hallo Daniel,
vielen Dank. Wieder etwas dazu gelernt.
Grüße demerzel

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige