Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1676to1680
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

Excel VBA existierende Variablen dynamisch aufrufe

Excel VBA existierende Variablen dynamisch aufrufe
03.03.2019 12:31:15
Tom
Hallo zusammen,
ich arbeite gerade an einer kleinen Datenbank und habe folgendes Problem:
Ich möchte die Textboxen einer Userform befüllen. Nachfolgend für eine einzelne Textbox (funktioniert auch).
With Worksheets("TJ").Range("A1:Z2000")
Set findresult2 = .Find("textbox_input_AO_ProvKauf")
End With
textbox_input_AO_ProvKauf = Cells(UserForm_suchen.zeile, findresult2.Column).Value
Jetzt möchte ich jedoch nicht jede einzelne Textbox einzeln befüllen, sondern das mit einer Schleife machen. Ich habe variablen bereits definiert. Diese Variablen (namen der Textboxen) habe ich in in Zellenbereich B3:Q3 geschrieben und jeden Variablennamen einer Position in einem eindimensionalen Arry gespeichert.
Leider wird beim Aufruf der Position des arrays keine Variable in der userform eingetragen. kann mir da vielleicht jemand weiterhelfen?
Dim i As Integer
' Dim tempforarray As String
arr = Range("B3:Q3").Value
For i = 1 To 16
With Worksheets("TJ").Range("A1:Z2000")
Set findresult2 = .Find(arr(1, i))
End With
' tempforarray = arr(1, i) ' versuch die Position des arrays in neue Varibale zu shreiben
MsgBox "i: " & i & "findresult2: " & findresult2 & vbCrLf & "Zeile: " & UserForm_suchen.zeile _
& vbCrLf & " Spalte: " & findresult2.Column & vbCrLf & " Arr(1,i): " & arr(1, i) _
arr(1, i) = Cells(UserForm_suchen.zeile, findresult2.Column).Value
arr(1, i) = Cells(UserForm_suchen.zeile, findresult2.Column).Value
' geht leider auch nicht
'tempforarray = Cells(UserForm_suchen.zeile, findresult2.Column).Value
Next i
End If
Vielen Dank

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Excel VBA existierende Variablen dynamisch aufrufe
03.03.2019 12:40:20
Nepumuk
Hallo Tom,
versuch es mal so:
Set findresult2 = .Find(Controls(arr(1, i)).Text)

Gruß
Nepumuk
AW: Excel VBA existierende Variablen dynamisch aufrufe
03.03.2019 14:08:19
Tom
Danke für die schnelle Antwort.
ich hab's mal ausprobiert, jedoch bricht er nach dem ersten Schleifendurchlauf mit einem Laufzeitfehler: " Das angegebene Objekt konnte nicht gefunden werden" ab.
Das Problem ist auch, dass in dieser Zeile:
arr(1, i) = Cells(UserForm_suchen.zeile, findresult2.Column).Value
... der Wert aus ...

Cells(UserForm_suchen.zeile, findresult2.Column).Value
... nicht in die Textbox geschrieben wird, sondern der wert an der Stelle arr(1, i) (oder tempforarray) überschrieben wird, weil er wahrscheinlich den Namen der Textbox nicht als Variable erekennt...
wie kann ich das umsetzen?
Gruß
Tom
Anzeige
AW: Excel VBA existierende Variablen dynamisch aufrufe
03.03.2019 14:29:12
Nepumuk
Hallo Tom,
"Das angegebene Objekt konnte nicht gefunden werden" resultiert daraus, dass der Name der TextBox in der Zelle nicht passt. Zum Rest kann ich nichts sagen, denn aus deinen Codefragmenten kann ich kein Gesamtkonzept herleiten. Lade bitte eine Beispielmappe hoch.
Gruß
Nepumuk

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige