Zellbezeichnung in Formel schreiben

Bild

Betrifft: Zellbezeichnung in Formel schreiben
von: Jannik
Geschrieben am: 28.04.2015 10:22:11

Hallo,
ich habe hier folgendes Problem; ich möchte gerne eine benutzerdefinierte Formel per Makro automatisch beim Beschreiben einer Zeile in eine bestimmte Zelle innerhalb dieser Zeile einfügen. Das Worksheet_Change event habe ich jetzt mal nicht in meine Beispielmappe eingefügt. Ich denke aber auch nicht, dass das nötig ist.
https://www.herber.de/bbs/user/97330.xlsm
Wichtig ist mir nur, das ich die ganzen Variablen (im Beispiel drei) über dynamische Variablen einfügen möchte. Was ich bislang geschafft habe, ist dass er mir jetzt die Funktion mit den drei Werten in die Zelle schreibt.
Ich hätte aber gerne, dass er mir stattdessen die ZELLBEZEICHNUNG WIE A2 (für variableA) einträgt, sodass ich beim eventuellen manuellen Vertauschen der Spalten nicht die Formel erneuern muss.
Naja außerdem steht in der Ergebniszelle noch #Wert anstelle einem Ergebnis, was ich da falsch gemacht habe weiß ich auch nicht...

Sub Formel_einfügen()
spalte = 0
    Do
    spalte = spalte + 1
        If Cells(1, spalte) = "X" Then
                spalte_x = spalte
            ElseIf Cells(1, spalte) = "Y" Then
                spalte_y = spalte
            ElseIf Cells(1, spalte) = "Z" Then
                spalte_z = spalte
            ElseIf Cells(1, spalte) = "Ergebnis" Then
                spalte_E = spalte
        End If
    Loop Until Cells(1, spalte) = ""
'das hier ist natürlich nur ein doofes Beispiel, die zeile wird natürlich auch dynamisch  _
bestimmt
zeile = 2
variableA = Cells(zeile, spalte_x)
variableB = Cells(zeile, spalte_y)
variableC = Cells(zeile, spalte_z)
Cells(zeile, 4).Formula = "=funktion(" & variableA & "," & variableB & "," & variableC & ")"
End Sub

Weiß jemand wie man die Zellen so in eine Formel schreiben kann?
Gruß Jannik

Bild

Betrifft: AW: Zellbezeichnung in Formel schreiben
von: Rudi Maintaire
Geschrieben am: 28.04.2015 10:28:03
Hallo,
variableA = Cells(zeile, spalte_x).Address
Gruß
Rudi

Bild

Betrifft: AW: Zellbezeichnung in Formel schreiben
von: Jannik
Geschrieben am: 29.04.2015 09:53:25
Vielen Dank (auch an EtoPHG für die Weiterleitung; das mit den Doppelposts ist wirklich lästig)
Mit dem Code hast du mich auf jeden Fall auf die richtige Fährte gesetzt, ich habe allerdings daraus

variableA = Cells(zeile, spalte_x).Address(false, false)
gemacht, um die Formel auch als solche benutzen zu können. Falls man nur .address schreibt, stehen in der Formel immer noch die Dollarzeichen und sie lässt sich damit nicht über die Autofill-Funktion in andere Zellen übertragen.
Grüße Jannik

 Bild

Beiträge aus den Excel-Beispielen zum Thema "Zellbezeichnung in Formel schreiben"