Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1388to1392
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
Inhaltsverzeichnis

String-Varablen in Formel

String-Varablen in Formel
23.10.2014 14:43:02
Peter
Hey Pros,
ich habe ein Verständisproblem ich habe diese Formel die er mir einfügen soll:
Range("F4").Select
ActiveCell.FormulaR1C1 = _
"=WENN(ISTFEHLER(INDEX(" & V1 & "!$A$1:$A$1000;MAX((" & V1 & "!$A$1:$A$1000"")*ZEILE(" & V1 & "!$1:$1000))));"";INDEX(" & V1 & "!$A$1:$A$1000;MAX((" & V1 & "!$A$1:$A$1000"")*ZEILE(" & V1 & "!$1:$1000))))"

V1 ist ein Wort zb. "Bla" und soll möglichst dann den Sheetnamen enthalten der von V1 ausgelesen wird. Das klappt aber die Formel will leider nicht wie ich will...
Entweder bekomme ich nur V1 angezeigt aber nicht Verknüpft zum Sheet oder es funktioniert gar nichts...

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: String-Varablen in Formel
23.10.2014 14:48:47
Hajo_Zi
du schreibst FormulaR1C1 also Formel in englisch und R1C1 Schreibweise, das ist bei Deiner Formel aber nicht.

Falls dir Hajos AW nicht den nötigen Denk-...
23.10.2014 15:25:43
Luc:-?
…Anstoß gegeben haben sollte, Peter,
dann lösche mal das .Select, setze neu .Form und sie dir an, was dir der VBE-Intellisense unter Formula so alles anzubieten hat. Das nachfolgende ActiveCell.FormulaR1C1 kannst du dann weglassen und gleich mit = "…" weitermachen. Wenn's dann immer noch nicht fktioniert, wird's wohl an deiner Fml liegen…
Gruß, Luc :-?

AW: Falls dir Hajos AW nicht den nötigen Denk-...
23.10.2014 17:10:52
Daniel
Hallo
meine vorgehensweise bei dem Problem ist diese:
1. schreibe die Formel ganz normal und funktionsfähig in eine Excelzelle
2. selektiere die Zelle mit der Formel und lass dir im Direktfenster mit folgendem Befehl die Formel anzeigen.
Dabei verwendest du von den vier möglichen Schreibweisen am besten R1C1:
?Replace(Selection.FormulaR1C1, """", """""")
Die Replace-Funktion verdoppelt dir gleich die Anführugngszeichen die zur Formel gehören, so wie es im Code notwendig ist.
Diesen Text kannst du dann kopieren und in den Code einfügen.
3. das Thema Variablen in der Formel löse ich so:
- die Formel wird zunächst in eine Variable geschrieben.
- die Stellen an die die Variable eingefügt werden soll werden durch eine Zeichenfolge gekennzeichnet, die ansonsten in der Formel nicht vorkommt.
- mit Replace wird dann dieser Text durch die Variable ersetzt.
Sieht als Code dann in entwa so aus:
dim FO as string
dim Var as string
FO = "=Sum(xxx!R1C1:R10:R1)
Var = "'" & ActiveSheet.Name & "'"
FO = Replace(FO, "xxx", Var)
Cells(1, 2).FormulaR1C1 = FO
vorallem wenn dieselebe Variable mehrfach in der Formel verwendet wird spart das Aufwand und die Formel ist im Code überschtlicher weil sie nicht jedesmal durch die " & " zerteilt wird.
Gruß Daniel

Anzeige
Das wolltest du aber sicher nicht mir mitteilen!
23.10.2014 17:47:27
Luc:-?
;-]
Gruß, Luc :-?

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige