Zellenwert, aus einer Variablen, als Teil einer Formel eingeben lassen....

  • Excel

Es gibt 6 Antworten in diesem Thema. Der letzte Beitrag () ist von ereza.

    Zellenwert, aus einer Variablen, als Teil einer Formel eingeben lassen....

    Hallo liebe Community!

    Ich würde gerne ein Problem lösen, aber weiß nicht wie...

    Und zwar...

    Ich habe eine Formel mit Index und Vergleich... und ich möchte ein VBA so schreiben, dass Excel mir als Zellennummer, den Wert aus einer Variablen ausliest und einfügt....

    also konkret:

    Ich habe folgende Formel: =INDEX('Ermittlung AußerBetriebnahme D.'!$L:$L;VERGLEICH(Aktueller_Equipment_Bestand!D2;'Ermittlung AußerBetriebnahme D.'!$K:$K;0))

    --> mir geht's um das "D2" - Excel soll nicht diesen statischen Wert verwenden, sondern den Wert aus einer Zählvariable... Somit... ich habe eine Zählvariable "b"...:

    Wenn b = 1 --> dann D1
    Wenn b = 2 --> dann D2
    Wenn b = 20 --> dann D20
    Wenn b = 83 --> dann D83
    Wenn b = 856 --> dann D856
    ... usw...

    Somit... ich möchte einfach die Zahl von der Variablen als "Zeilenzahl" von der Zelle bei der Formel verwenden....

    Ich hätte nun folgenden Ansatz...:

    Visual Basic-Quellcode

    1. Range(Cells(b, 10), Cells(b, 10)).Formula = "=INDEX('Ermittlung AußerBetriebnahme D.'!$L:$L;VERGLEICH(Aktueller_Equipment_Bestand!D"&b&";'Ermittlung AußerBetriebnahme D.'!$K:$K;0))"



    also die Idee war... dass man mit & das irgendwie verkünpft... aber das bringt er mir einen Synthaxfehler...

    Kann mir jemand helfen und mir sagen, wie ich das richtig schreiben muss dass es Excel kapiert??


    Wäre super!!

    Vielen Dank!

    LG Tim
    hmmm...

    er schmeißt mir leider immer noch einen Fehler :((

    Visual Basic-Quellcode

    1. Range(Cells(b, 10), Cells(b, 10)).Formula = "=INDEX('Ermittlung AußerBetriebnahme D.'!$L:$L;VERGLEICH(Aktueller_Equipment_Bestand!D" & b & ";'Ermittlung AußerBetriebnahme D.'!$K:$K;0))"
    hmmm...

    haut dann leider auch immer noch nicht hin...

    aber... ich habe inzwischen einen Workaround der sich eigentlich sogar als bessere Lösung erwiesen hat...

    Mit deinem Tipp mit der Find-Funktion.... mach ich das jz hier einfach auch so.. und das klappt auch wunderbar! weil ich in dem Fall wieder nu unique werte habe...

    somit... meine funktionierende Lösung:

    Visual Basic-Quellcode

    1. s = Tabelle24.Cells(Rows.Count, 11).End(xlUp).Row
    2. r = Tabelle24.Range(Tabelle24.Cells(2, 11), Tabelle24.Cells(s, 11)).Find(Cells(b, 4).Value).Row
    3. Cells(b, 10).Value = Tabelle24.Cells(r, 12)


    also... suche mir die Zeilennummer wo der Wert von dem VERGLEICHsteil der Formel --> D10 vorkommt raus... und weiße mir den INDEXteil von der Formel einfach über die Zeilennummer zu...

    Klappt super!

    Danke trotzdem vielmals!!

    LG Tim