Registriert seit: 29.08.2018
Version(en): 2016
Hallo
Wie kann ich eine Funktion mittels VBA in eine Zelle Schreiben?
Ich arbeite in einem worksheet und habe bereits folgendes versucht:
.Range("P17").Formula = "=Formel"
-> Fehler: Syntaxfehler
Meine Formel die ich einfügen möchte ist folgende:
=WENNFEHLER(INDEX('Systemprüfung-Kurzbeschreibung'!$I$10:$I$120;AGGREGAT(15;6;ZEILE('Systemprüfung-Kurzbeschreibung'!$I$10:$I$120)-9/(('Systemprüfung-Kurzbeschreibung'!$V$10:$V$120=B17)*('Systemprüfung-Kurzbeschreibung'!$Y$10:$Y$120=F17));B19));"Kein Test vorhanden")
Registriert seit: 06.12.2015
Version(en): 2016
Hallo,
unterscheide
.Formula : englische Notation
.FormulaLocal : deutsche Notation
Notation ist sowohl der Name der Funktion ("=summe()"; "=sum()") als auch das Trennzeichen (eng: ","; dt: ";")
mfg
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
05.09.2018, 10:45
(Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2018, 10:45 von MisterBurns.)
Du musst Texte in doppelte Anführungszeichen setzen, also
Code:
""Kein Test vorhanden""
anstatt
Code:
"Kein Test vorhanden"
Verwende außerdem
Code:
.Range("P17").FormulaLocal = "=Formel"
Solche Probleme lassen sich aber eigentlich wunderbar mit dem Makrorekorder lösen.
Schöne Grüße
Berni
Registriert seit: 29.08.2018
Version(en): 2016
Dankeschön MisterBurns
Wie würdest du bei der Makroaufzeichnung vorgehen?
Ich habe dies bereits versucht, allerdings lediglich mit coby und paste per Hand.
Registriert seit: 29.08.2018
Version(en): 2016
Verwende außerdem
Code:
.Range("P17").FormulaLocal = "=Formel"
Bei der Verwendung hiervon bekomme ich eine Fehlermeldung:
Fehler beim Kompilieren:
Unzulässiger oder nicht ausreichend definierter Verweis
Muss ich noch was vor den Punkt von Range schreiben?
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Das kommt davon, wenn man nur Codeschnipsel postet - woher sollen wir wissen, wie dein Code aussieht?
Wenn du vor Range den Punkt stehen hast, muss die Zeile in einer With-Anweisung stehen. Hast du keine solche Anweisung, brauchst du auch keinen Punkt.
Steht dein Code im Tabellenblattmodul oder in einem allgemeinen Modul? Wenn im allgemeinen Modul, dann schreibe
Code:
Sheets("DeinTabellenblatt").Range("P17").FormulaLocal = "=Formel"
Und ist die Frage bezüglich Makroaufzeichnung ein Scherz? Du startest die Aufzeichnung, gibst die Formel in die Zelle ein und beendest die Aufzeichnung. Was brauchst du noch?
Schöne Grüße
Berni
Registriert seit: 29.08.2018
Version(en): 2016
05.09.2018, 11:26
(Dieser Beitrag wurde zuletzt bearbeitet: 05.09.2018, 11:26 von Excelsior940.)
"INHALT WURDE ENFERNT"