Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1508to1512
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

Namen von Dynamisch erzeugten TextBoxen deklariere

Namen von Dynamisch erzeugten TextBoxen deklariere
18.08.2016 14:13:18
Dynamisch
Hallo an Alle,
ich habe folgendes Problem. Ich im untenstehenden Code es geschafft, dass mir eine UserForm mit eine vielzahl an TextBoxen erzeugt wird. Jedoch finde ich nicht herraus wie diese Textboxen nun heißen.
Immer wenn ich jetzt versuche die Werte der Textboxen auszulesen stehe ich vor dem Problem, dass ich nicht den Namen der einzelnen Textboxen kenne und somit immer die meldung erhalten (Variable nicht definiert)
Würde mich freuen, wenn ihr mich in die richtige Richtung schubsen könnt.
Dim theTextBox As Object
Dim textBoxCounter As Long
For textBoxCounter = 1 To AnzahlKontenPrämie1
Set theTextBox = KontoauszügePrämie.Controls.Add("Forms.TextBox.1", "Kontostand" & textBoxCounter, True)
With theTextBox
.Value = Sheets("Datenbank Konten Prämie").Range("L" & (textBoxCounter + 1)).Value
.Left = 90
.Width = 120
.Top = 6 + (36 * textBoxCounter)
End With
Next

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Namen von Dynamisch erzeugten TextBoxen deklariere
18.08.2016 14:18:18
Dynamisch
Hi
statt sich mit zur Laufzeit erzeugten Steuerelementen herumzuärgern, könntest du nicht auch eine Listbox verwenden?
gruß Daniel
AW: Namen von Dynamisch erzeugten TextBoxen deklariere
18.08.2016 14:27:55
Dynamisch
Hi Daniel,
eine Listbox bringt micht denke ich nicht weiter. Zum einen wegen der Anwenderergonomie und zum anderen da ich in der Listbox je Zeile immer nur einen wert bearbeiten muss.
LG Christof
Zur Laufzeit erzeugte TextBoxen ansprechen...
18.08.2016 15:23:12
Case
Hallo, :-)
packe dir folgendes mal in eine leere UserForm und lass es rennen: ;-)
Option Explicit
Private Sub UserForm_Activate()
Dim MyBox As Control
Dim MyTxt As Control
Dim lngTMP As Long
With Me
For lngTMP = 1 To 5
Set MyTxt = .Controls.Add("Forms.TextBox.1", "TextBox" & lngTMP, True)
With MyTxt
.Left = 18
.Top = 6 + (36 * lngTMP)
.Width = 175
.Height = 20
End With
Set MyTxt = Nothing
Next lngTMP
End With
For Each MyBox In Me.Controls
If TypeName(MyBox) = "TextBox" Then
MyBox.Value = "Test" & Int((100 * Rnd) + 1)
End If
Next MyBox
MsgBox Me.Controls("TextBox3").Text
End Sub
Servus
Case

Anzeige
Zur Laufzeit erzeugte TextBoxen ansprechen...
18.08.2016 15:44:53
Case
Hallo, :-)
bzw. wenn Du eine Laufvariable hast, kannst du die Textboxen auch über "Controls.Item" ansprechen: ;-)
MsgBox Me.Controls.Item("TextBox" & lngX).Value
Servus
Case

AW: Zur Laufzeit erzeugte TextBoxen ansprechen...
18.08.2016 16:35:29
Christof
Vielen Dank hat mir sehr geholfen
AW: Zur Laufzeit erzeugte TextBoxen ansprechen...
18.08.2016 17:27:32
Christof
Was mach ich nun verkerht ?
Sheets("Datenbank Konten Prämie").Range("L" & (EintragCounter + 1)).Value = Me.Controls("Kontostand" & EintragCounter).Value
bin echt am verzweifeln
AW: Zur Laufzeit erzeugte TextBoxen ansprechen...
18.08.2016 17:35:29
Christof
So hat sich erledit der fehler lag zuvor in der Schleife :D
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige