Formel mit Makro einfügen
#1
Hallo, ich versuche eine Formel mit einem Makro in einer Zelle zu schreiben. Leider kommt immer eine Fehlermeldung 1004.

Diese Formel möchte ich in eine Zelle einfügen:

=WENN(UND(A1<>"";A1<>A2);SUMMEWENN(A:A;A1;C:C);"")

habe es auch auf englisch versucht:

=IF(AND(A1<>"",A1<>A2),SUMIF(A:A,A1,C:C),"")


Mit diesem Makro geht es leider nicht. 

Sub test()

Range("c1").FormulaLocal = "=WENN(UND(A1<>"",A1<>A2),SUMMEWENN(A:A,A1,C:C),"")"


End Sub



Wisst ihr da eventuell weiter?
Antworten Top
#2
Bei .Formula musst du auf amerikanische Schreibweise wechseln, also englische Formelnamen und Komma als Trenner
Bei .FormulaLocal bleibst du deutsch, also auch beim Semikolon als Trenner.

Auf alle Fälle müssen Anführungszeichen gedoppelt werden, wenn sie als Zeichen in einem String verwendet werden sollen.
[-] Folgende(r) 1 Nutzer sagt Danke an Gast für diesen Beitrag:
  • mf1633
Antworten Top
#3
Hi,

in Ergänzung zu EarlFreds Hinweis kannst Du hier z.B. auch mal nachlesen, wie man korrekt verkettet:

Strings bzw. Texte korrekt verketten (herber.de)
[-] Folgende(r) 1 Nutzer sagt Danke an {Boris} für diesen Beitrag:
  • mf1633
Antworten Top
#4
Hallo mf1639,

dir ist bewusst, dass du mit der Formel in C1, durch die Angabe C:C einen Zirkelbezug erzeugst?
Ändere den Bereich C:C, oder schreibe die Formel in eine andere Spalte
Hier dein Code mit Zirkelbezug:
Code:
Range("C1").FormulaLocal = "=WENN(UND(A1<>"""";A1<>A2);SUMMEWENN(A:A;A1;C:C);"""")"
Gruß Karl
Antworten Top


Gehe zu:


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