Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
612to616
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
612to616
612to616
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Formeln in VBA
24.05.2005 16:06:43
Matt
Hallihallo!
Verzweifle gerade etwas, vielleicht kann ja jemand helfen!
Also:
Ich muss dynamisch auf einer Exceltabelle Formeln erzeugen. Das funktioniert soweit auch ganz gut, nur habe ich nun folgendes Problem:
Um die netten Rauten zu umgehen, die entstehen, wenn ich bspw. eine Division durch 0 habe, frage ich mit "ISTZAHL" ab, ob eine Division funktioniert. Die Formel an sich funktioniert auch in Excel bei direkter Eingabe in die Zelle, aber ich will sie ja per VBA erzeugen und da meckert er und spuckt nen Laufzeitfehler aus.
Hier mein Code, weitere Anmerkungen in den Kommentarzeilen:
'Definition der Formel
'Variable Spalte enthält den Buchstaben der Spalte
'Der Rest sind dynamische Werte für die Position der Zelle.
formel = "=WENN(ISTZAHL(" & spalte & (startRow + 1) & "/" & spalte & (startRow + 8) & ")=WAHR;" & spalte & (startRow + 1) & "/" & spalte & (startRow + 8) & ";0)"
Tabelle1.Cells(startRow + 11, dataColumn) = formel
'Die Variable formel hat dann auch den Wert unten, der bei copy & paste
'in eine Zelle auch funktioniert. Nur beim Setzen per VBA schiesst er mich raus
'=WENN(ISTZAHL(N16/N23)=WAHR;N16*1000/N23;"")
Ich hoffe, jemand versteht, was ich meine ;-)
Danke schonmal!
Matt

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formeln in VBA
24.05.2005 16:10:24
u_
Hallo,
Tabelle1.Cells(startRow + 11, dataColumn).FormulaLocal = formel
Gruß
Geist ist geil!
AW: Formeln in VBA
24.05.2005 16:32:01
Matt
Besten Dank!
FormulaLocal funktioniert prächtig.
cya
AW: Formeln in VBA
24.05.2005 16:30:17
Ralf
Hi Matt,
versuchs mal damit:

Sub Fehlerbehandlung()
On Error GoTo Null_setzen
Range("C1") = Range("N16") * 1000 / Range("N23")
Exit Sub
Null_setzen:
Range("C1") = 0
End Sub

Cia, Ralf
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige