Einzelnen Beitrag anzeigen
Ungelesen 04.12.10, 13:42   #1
testormensch
Anfänger
 
Registriert seit: Sep 2010
Beiträge: 3
Bedankt: 0
testormensch ist noch neu hier! | 0 Respekt Punkte
Standard VBA Variablen "Platzhalter"

Hallo,

ich habe bereits ein paar kleine Programme mit VBA geschrieben, aber das ist jetzt mein erstes eigenes Programm, also ich habe noch nicht viel Erfahrung.

Aber erstmal grob zu dem Programm, es hat 25 Comboboxen. Ich möchte jetzt sobald sich in einer etwas ändert, dass sich eine Variable um 1 erhöht und eine andere um 1 verringert. Und hier kommt mein Problem.

Es gibt hier insgesamt 31 Variablen, von denen immer 2 betroffen sind, das Ganze könnte ich jetzt mit enorm vielen If Abfragen lösen, dass halt ich aber für unsinnig.

Meine Idee sieht so aus:
Sobald ich auf eine Combobox klicke soll der aktuelle Inhalt in die Variable "Alt" eingelesen werden. Sobald sich der Inhalt der Combobox ändert soll der neue Inhalt in die Variable "Neu" geschrieben werden. Diese beiden Strings ändere ich mit einer Split Funktion so, dass der Inhalt immer identisch mit einer der 31 Variablen ist.

Und jetzt möchte ich, dass der Inhalt der Variablen "Neu" bzw "Alt" in den Platzhalter für den Variablen Namen bei der Variablen zuweisung gesetzt wird. So sieht es bis jetzt bei mir aus:



Code:
    Private Sub ComboBoxGrp1_1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBoxGrp1_1.Click

        Alt = ComboBoxGrp1_1.Text
        Alt = Join(Split(Alt, "Ü"), "ue")
        Alt = Join(Split(Alt, "ä"), "ae")
        Alt = Join(Split(Alt, " "), "_")
        Alt = Join(Split(Alt, "("), "_")
        Alt = Join(Split(Alt, ")"), "")
     

    End Sub

    Private Sub ComboBoxGrp1_1_TextChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles ComboBoxGrp1_1.TextChanged
      
        Neu = ComboBoxGrp1_1.Text
        Neu = Join(Split(Neu, "Ü"), "ue")
        Neu = Join(Split(Neu, "ä"), "ae")
        Neu = Join(Split(Neu, " "), "_")
        Neu = Join(Split(Neu, "("), "_")
        Neu = Join(Split(Neu, ")"), "")
	
	PLATZHALTER_FÜR_INHALT_VON_ALT += 1  '<--Ergibt natürlich noch keinen Sinn
	PLATZHALTER_FÜR_INHALT_VON_NEU -= 1   '<--Ergibt natürlich noch keinen Sinn


    End Sub
Der untere Teil soll Später dann in eine Funktion, die ich dann für alle Comboboxen aufrufe.


Ich hoffe es ist halbwegs verständlich, was mein Problem ist.
Danke schonmal!
testormensch ist offline   Mit Zitat antworten