Microsoft Excel

Herbers Excel/VBA-Archiv

Zellbezeichnung in Formel schreiben

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

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

  

Betrifft: War schon mal da => Doppelt (owT) von: EtoPHG
Geschrieben am: 28.04.2015 10:32:58




  

Betrifft: AW: War schon mal da => Doppelt (owT) von: Jannik
Geschrieben am: 28.04.2015 11:40:09

ps das mache ich nicht absichtlich... kann noch nicht so genau sagen warum das passiert aber zweimal drücke ich den abschicken button jedenfalls nicht


  

Betrifft: AW: Zellbezeichnung in Formel schreiben von: ransi
Geschrieben am: 28.04.2015 10:34:23

HAllo,

Naja außerdem steht in der Ergebniszelle noch #Wert anstelle einem Ergebnis, was ich da falsch gemacht habe weiß ich auch nicht...

Zumindest da kann ich dir helfen:

Function funktion(variableA, variableB, variableC) As String
    funktion = (variableA + variableB + variableC)
End Function



Alles andere hab ich nicht verstanden.

ransi


  

Betrifft: AW: Zellbezeichnung in Formel schreiben von: Jannik
Geschrieben am: 28.04.2015 10:43:03

Naja trotzdem schon mal danke dafür...

Und noch eine kurze Nachfrage; vorher waren meine Variablen ja Range's, jetzt sind es auch Strings ?!


  

Betrifft: AW: Zellbezeichnung in Formel schreiben von: ransi
Geschrieben am: 28.04.2015 12:38:16

Hallo,

Deine Variablen sind Variant.
Du hast nur variableC as Range deklariert.

ransi


  

Betrifft: AW: Zellbezeichnung in Formel schreiben von: Jannik
Geschrieben am: 29.04.2015 07:35:32

Na gut also wenigstens das mit den Datentypen habe ich jetzt glaube ich verstanden... Dank an ransi

Eine Lösung für mein ursprüngliches Problem habe ich aber damit leider noch nicht.


  

Betrifft: Die Antwort ist im 1. Thread unten! (owT) von: EtoPHG
Geschrieben am: 29.04.2015 08:27:07




 

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