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

TextBox als Variable deklarieren

TextBox als Variable deklarieren
09.07.2021 12:01:02
manuele
Hallo zusammen,
kann mir einer helfen die TextBox1 in einer Variable zu ändern, bekomme das nicht hin.
Mein vorgehen ist:
Mit Doppelklick in z.b TB1 starte ich das event "Call mp".
Aber bekomme es nicht hin das im "sub_mp" die Textbox übernimmt, bei der ich das Doppelklick ausgelöst habe.

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call mp
TextBox1 = ""
End Sub
Sub mp() 'MainCall zur Dbl Click aktion
Dim lngZeile As Long
Dim lngLeereZeile As Long
Dim blnGefunden As Boolean
If MultiPage1.Value = 0 Then
ListBox1.AddItem
For lngZeile = 0 To ListBox1.ListCount - 1
If IsNull(ListBox1.List(lngZeile)) Then
lngLeereZeile = lngZeile
blnGefunden = True
Exit For
End If
Next 'lngZeile
If blnGefunden Then
ListBox1.List(lngZeile, 0) = TextBox1.Text ' Else
'MsgBox "Keine Leerzeile in der Listbox"
End If
ElseIf MultiPage1.Value = 1 Then
ListBox2.AddItem
For lngZeile = 0 To ListBox2.ListCount - 1
If IsNull(ListBox2.List(lngZeile)) Then
lngLeereZeile = lngZeile
blnGefunden = True
Exit For
End If
Next 'lngZeile
If blnGefunden Then
ListBox2.List(lngZeile, 0) = TextBox1.Text ' Else 'MsgBox "Keine Leerzeile in der Listbox"
End If
End If
End Sub Danke und Gruß

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: TextBox als Variable deklarieren
09.07.2021 12:15:02
Daniel
HI
arbeite mit Übergabeparamter.
der funktioniert dann im Makro wie eine Variable:

Sub mp(AufrufendesObjekt as control) 'MainCall zur Dbl Click aktion
ListBox1.List(lngZeile, 0) = AufrufendesObjekt.Text
End Sub

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call mp(TextBox1)
"as Control" ist der Datentyp in einer Userform.
Verwendest du ActiveX-Controls auf einem Tabellenblatt brauchst du wahrscheinlich einen anderen Datentyp.
im Zweifelsfall "as Object" oder "as Variant", das geht immer.
Gruß Daniel
Anzeige
AW: TextBox als Variable deklarieren
09.07.2021 13:04:55
ChrisL
Hi
Wie Daniel schon schrieb, die Variable übergeben. Ich habe es als Text-String gemacht, weil du TextBox1.Text verwendet hast.
Hier der Code noch ein wenig angepasst. Gut wäre, wenn es gar nicht erst zu Leerzeilen kommt, dann könntest du auf die Schleife verzichten.

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
If TextBox1  "" Then
Call mp(TextBox1.Text)
TextBox1 = ""
End If
End Sub

Sub mp(strTB As String)
Dim ctlLB As Control
Dim lngZeile As Long
Dim lngLeereZeile As Long
Dim blnGefunden As Boolean
With UserForm1
If .MultiPage1.Value = 0 Then
Set ctlLB = .ListBox1
ElseIf .MultiPage1.Value = 1 Then
Set ctlLB = .ListBox2
Else
Exit Sub
End If
For lngZeile = 0 To ctlLB.ListCount - 1
If IsNull(ctlLB.List(lngZeile)) Then
lngLeereZeile = lngZeile
blnGefunden = True
Exit For
End If
Next lngZeile
If blnGefunden Then
ctlLB.List(lngZeile, 0) = strTB
Else
ctlLB.AddItem strTB
End If
End With
End Sub
cu
Chris
Anzeige
AW: TextBox als Variable deklarieren
09.07.2021 13:05:21
GerdL
Moin Manuele!
Teste mal.

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Call mp(TextBox1)
TextBox1 = ""
End Sub
Sub mp(TB As Control) 'MainCall zur Dbl Click aktion
If Len(TB) > 0 Then Controls("ListBox" & Multipage1.Value + 1).AddItem TB.Text
End Sub
Gruß Gerd
AW: TextBox als Variable deklarieren
09.07.2021 15:09:31
snb

Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
with Me("Listbox" & multipage1.value +1)
.list =filter(split(Join(.list,"|~") & "|" & Textbox1),"|"),"~",0)
end with
TextBox1 = ""
End Sub

Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige