Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
804to808
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
804to808
804to808
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Value Eigenschaft setzen mit Formelstring

Value Eigenschaft setzen mit Formelstring
29.09.2006 23:31:13
Andi
Ich möchte per VBA Formeln in die betreffenden Zellen eintragen
Dies funktioniert:
Worksheets("akpreise").Cells(y, 5).Value = "=MAX(K" & y & ":P" & y & ")"
Worksheets("akpreise").Cells(y, 6).Value = "=B" & y & "*E" & y
Hier kommt es zu einem Laufzeitfehler 1004
Worksheets("akpreise").Cells(y, 8).Value = "=MAX(E" & y & "*I" & y & ";Q" & y & ")"
aber warum? selbst wenn ich die Formel kürze bis auf 2 Zahlen mit einem
; getrennt kommt es zum Fehler.
kann mir jemand auf die Sprünge helfen?
Vielen Dank im Voraus
mfG
ANdreas

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

Betreff
Datum
Anwender
Anzeige
Was hast Du vor?
29.09.2006 23:42:12
{Boris}
Hi Andreas,
willst Du Formeln in die Zelle schreiben oder die Formeln als Text in der Zelle stehen haben?
Für Formeln nutze die Formula(local)-Eigenschaft - und für beide Fälle gilt: Anführungszeichen innerhalb der Formel müssen doppelt "" geschrieben werden.
Grüße Boris
AW: Value Eigenschaft setzen mit Formelstring
30.09.2006 01:19:35
Stefan
Hallo Andreas,
Versuch mal das semikolon mit einem Komma zu ersetzen... nur so ne Idee...
Schoene Gruesse
Stefan Br.
AW: Value Eigenschaft setzen mit Formelstring
30.09.2006 14:00:11
Daniel
Hallo
um es mal klar zu formulieren:
es geht um das Trennzeichen, mit dem in Excelformeln die einzelnen Parameter getrennt werden, also im deuteschen Excel das ";" (in Internationalen bzw englischen wird hier das "," verwendet
Wenn du den Formeltext an .VALUE zuweist, befindest du dich auf internationalen Sprachebene, das heißst, du mußt im Formelstring as ";" durch "," ersetzen:
Worksheets("akpreise").Cells(y, 8).Value = "=MAX(E" & y & "*I" & y & ",Q" & y & ")"
Wenn du den Formeltext an .FORMULALOCAL zuweist, bist du auf der deutschen Sprachebene und kannst das ";" stehen lassen:
Worksheets("akpreise").Cells(y, 8).FormulaLocal = "=MAX(E" & y & "*I" & y & ";Q" & y & ")"
Die Doppelten Anführungszeichen mußt du dann setzen, wenn das Anführungszeichen Teil des Formeltextes ist. (kommt aber in deinenm Beispiel nicht vor). DAs Anführungszeichen zum Trennen von Fix-Text und Variablen bleibt weiterhin einfach
Willst du in eine Zelle per Makro folgende Formel schreiben:
="Druckdatum: "&TEXT(HEUTE();"tt.mmm.jjjj")
und dabei ein Variables Datumsformat verwenden, sieht der VBA-Befehl so aus:

Sub test()
Dim DatFormat(3) As String
Dim i As Long
DatFormat(1) = "TT. MMMM JJJJ"
DatFormat(2) = "JJJJ-MM-TT"
DatFormat(3) = "MM/TT/JJJJ"
For i = 1 To 3
Cells(i, 1).FormulaLocal = "=""Druckdatum: ""&TEXT(HEUTE();""" & DatFormat(i) & """)"
Next
End Sub

hier kommen dann bis zu 3 Anführungzeichen hintereinander: 2 aus dem Formeltext und das dritte zum trennen von Fixtext und Variable
Gruß, Daniel
Anzeige

62 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige