Anzeige
Archiv - Navigation
1676to1680
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
Formel per Schleife als String aufbauen
05.03.2019 15:30:45
scipiol
Hallo VBA-Profis,
ich baue eine Formel in einer Schleife auf, die ich per ".Formula" in eine Zelle einfügen möchte. Die Schleife orientiert sich an den eingelesenen Einträgen eines Arrays .
Als Variable benutze ich einen String und in der Schleife steht dann folgendes:
formel = formel & "WENN(I17=""" & Kabeltypen(i) & """; Verweis(I18;" & Kabeltypen(i) & ";" & Kabeltypen(i) & "_Widerstand);"

so sieht ein Durchlauf z.B. aus: WENN(I17="NYCY"; VERWEIS(I18;NYCY;NYCY_Widerstand);
NYCY und NYCY_Widerstand sind definierte Bereiche
Die Formel wird dann mit einem "=" vorne und hinten mit "0" und der entsprechenden Anzahl an Klammern geschlossen.
Mit Worksheets("Berechnung Ströme").Range("I19").Formula = formel soll sie dann eingefügt werden und da bekomme ich immer den Fehler. Ich habe vor dem Einfügen auch schon den Code gestoppt und per Variablentabelle das Ergebnis manuell rauskopiert und eingefügt und es hat funktioniert. Darum die Frage an euch, woran es liegt, dass es nicht auch per .Formula funktioniert?
Das ganze findet in einer UserForm statt, falls dies von Belang ist.
Ziel des ganzen: In den Zellen darüber hat der User per Dropdown Auswahlmöglichkeiten und je nach der aktuellen Auswahl soll dann woanders nachgeschaut werden.
Ich mache das mit VBA, weil man per Makro neue Auswahlmöglichkeiten in den Dropdowns hinzufügen kann und die müssen dann bei der Abfrage natürlich auch mit eingebunden werden.
Ich bin euch sehr dankbar, wenn ihr den Fehler findet.
Freundliche Grüße, Scipiol

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Formel per Schleife als String aufbauen
05.03.2019 15:36:27
Zwenn
Hallo Scipiol,
VBA verwendet englische Formelnamen und kennt wenn deshalb nicht. Ich schreibe sehr selten Formeln über VBA und bin deshalb nicht sicher, ob es reicht, wenn Du .FormulaLocal verwendest oder ob Du statt Wenn lieber If schreiben solltest.
Viele Grüße,
Zwenn
AW: Formel per Schleife als String aufbauen
05.03.2019 15:41:07
scipiol
Vielen Dank Sven!
Mit Englisch hatte ich es auch probiert. Wenn=IF und Verweis=Lookup. Das hatte jedoch nicht funktioniert.
aber Formulalocal klappt wunderbar!
Ist mir bei der englischen Übersetzung ein Fehler unterlaufen?
AW: Formel per Schleife als String aufbauen
05.03.2019 15:48:37
Daniel
Hi
zwischen .Formula und .FormulaLocal (deutsch), gibt es drei wesentliche Unterschiede, die du beim Erstellen der Formel beachten musst:
1. Funktionsnamen: Englisch / Deutsch
2. Parametertrennzeichen: Komma / Semikolon
3. Dezimalzeichen: Punkt / Komma
sollest du die R1C1-Variante verwenden (.FormulaR1C1 / .FormulaR1C1Local so kommt noch hinzu:
4. Zelladressen: R1C1 und [] / Z1S1 und ()
Gruß Daniel
Anzeige
AW: Formel per Schleife als String aufbauen
07.03.2019 11:20:53
scipiol
Danke Daniel!
Das mit dem Komma/Semikolon war der Knackpunkt. Das war mir nicht bekannt. nun läuft alles
Gruß scipiol
AW: Formel per Schleife als String aufbauen
05.03.2019 15:48:57
Daniel
Hi
zwischen .Formula und .FormulaLocal (deutsch), gibt es drei wesentliche Unterschiede, die du beim Erstellen der Formel beachten musst:
1. Funktionsnamen: Englisch / Deutsch
2. Parametertrennzeichen: Komma / Semikolon
3. Dezimalzeichen für Zahlen: Punkt / Komma
sollest du die R1C1-Variante verwenden (.FormulaR1C1 / .FormulaR1C1Local so kommt noch hinzu:
4. Zelladressen: R1C1 und [] / Z1S1 und ()
Gruß Daniel

104 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige