Microsoft Excel

Herbers Excel/VBA-Archiv

Textbox in Multipage

Betrifft: Textbox in Multipage von: Lorenz
Geschrieben am: 08.04.2021 16:48:20

Hallo Helfende

Wie ist es möglich den Namen der Textbox in einer Multipage zu ermitteln?

Eines meiner vielen Fehlschläge (fehlversuche):

MsgBox MultiPage1.Pages(2).ActiveControl.Name

wie sollte die "Abfrage aussehen?
Gruß
Lorenz

Betrifft: AW: Textbox in Multipage
von: Nepumuk
Geschrieben am: 08.04.2021 16:54:36

Hallo Lorenz,

Pages(2) ist die dritte Seite. Kann es sein dass es daran scheitert?

Gruß
Nepumuk

Betrifft: AW: Textbox in Multipage
von: Lorenz
Geschrieben am: 08.04.2021 17:02:02

Hallo Nepumuk



Ganz genau, das war´s.



vielen Dank für die Info (Belehrung)



Grüße Lorenz

Betrifft: AW: Textbox in Multipage
von: Lorenz
Geschrieben am: 08.04.2021 17:23:52

Hallo Nepomuk

Eine Zusatzfrage:
Ich habe ein kalenderModul (UF) in verwendung. Das Modul wird mittels doppelklick aufgerufen, verarbeitet, anschließend sollte das ergebnis in die zuvor aktive Textbox eingetragen werden. Wie ist dies möglich?.

Grüße
Lorenz

Betrifft: AW: Textbox in Multipage
von: Nepumuk
Geschrieben am: 08.04.2021 17:27:35

Hallo Lorenz,

Doppelklick worauf?

Gruß
Nepumuk

Betrifft: AW: Textbox in Multipage
von: Lorenz
Geschrieben am: 08.04.2021 17:39:46

Hi, Nepumuk

Mit doppelklick auf die Textbox wird die Kalenderform mit . show aufgerufen. In der KalenderUF gibts ein Übertrag auf z.B. Textbox10. Einmal auf TExtbox11 dann Textbox33. Da dachte ich es wäre einfacher auf "selectedControl" den Eintrag aus der Kalenderform zu Übertragen! Vielleicht eine verkorxte Idee??

Grüße Lorenz

Betrifft: AW: Textbox in Multipage
von: Nepumuk
Geschrieben am: 08.04.2021 17:42:11

Hallo Lorenz,

gib doch einfach dem Kalender die entsprechende TextBox als Eigenschaft mit.

Gruß
Nepumuk

Betrifft: AW: Textbox in Multipage
von: Lorenz
Geschrieben am: 08.04.2021 18:01:23

Hallo Nepumuk,

Steh ich ein bisserl auf´m Schlauch. Weis nicht was du damit meinst.
Hier die Codezeilen wie ich die Ergebnisse funktionierend übertrage
Private Sub CommandButton1_Click()
    ' Eintragen in Tabelle
    'ThisWorkbook.Worksheets("Tabelle1").Range("B14") = CDate(ComboBox1 & "." & ComboBox2 & "."  _
& ComboBox3)
    'Eintragen in Textbox
    'Userform1.Textbox78 = CDate(ComboBox1 & "." & ComboBox2 & "." & ComboBox3),
soweit funkt ja alles.

  
    'Hier mein nicht funktionierendes WunschEintragen in zuvor gewählte (selectierte) Textbox( _
en)
    Selected.Control = CDate(ComboBox1 & "." & ComboBox2 & "." & ComboBox3)
    Unload Me                                      
End Sub
Grüße
Lorenz

Betrifft: AW: Textbox in Multipage
von: Nepumuk
Geschrieben am: 08.04.2021 18:20:07

Hallo Lorenz,

in deinem UserForm:
Private Sub TextBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    With UserForm2
        Set .TextBox = TextBox1
        Call .Show
    End With
End Sub
In deinem Kalender (bei mir UserForm2):
Option Explicit

Private mobjTextBox As MSForms.TextBox

Private Sub CommandButton1_Click()
    TextBox.Text = Format$(ComboBox1.Text & "." & _
        ComboBox2.Text & "." & ComboBox3.Text, "dd.mm.yyyy")
    Call Unload(Object:=Me)
End Sub

Private Sub UserForm_Terminate()
    Set TextBox = Nothing
End Sub

Friend Property Get TextBox() As MSForms.TextBox
    Set TextBox = mobjTextBox
End Property

Friend Property Set TextBox(ByRef probjTextBox As MSForms.TextBox)
    Set mobjTextBox = probjTextBox
End Property

Gruß
Nepumuk

Betrifft: AW: Textbox in Multipage
von: Lorenz
Geschrieben am: 09.04.2021 10:12:23

Hallo Nepumuk

Funktioniert super! Da die Textboxen an bis zu 15 verschiedenen Stellen befinden, Habe den Code für meine Bedürfnisse folgendermaßen angepasst:
Private Sub txb47_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Dim strName As String
wksStart.Cells(2, 1) = ActiveControl.Name
strName = wksStart.Cells(2, 1)
With frmKalenderersatz
        Set .TextBox = Controls(strName)
        Call .Show
    End With
End Sub

vielen Dank nochmals.

PS: Schönheitsfehler (meinerseits): Befindet sich die Textbox in einer Multipage, so liefert "ActiveControl.Name" Multipage1, und nicht die selektierte Textbox, da hab ich den nächsten Hänger!

Danke & Grüße
Lorenz

Betrifft: AW: Textbox in Multipage
von: Nepumuk
Geschrieben am: 09.04.2021 10:19:51

Hallo Lorenz,

warum so umständlich? Einfach so:
Private Sub txb47_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
    With frmKalenderersatz
        Set .TextBox =  txb47
        Call .Show
    End With
End Sub

Gruß
Nepumuk

Betrifft: Erledigte Textbox in Multipage
von: Lorenz
Geschrieben am: 09.04.2021 10:42:58

Hallo Nepumuk



Eigentlich einleuchtend, Da war ganz einfach der "viel zu umständliche, eingeschlagene Weg" ein total Falscher.
Ich hatte ganz einfach nicht daran gedacht, daß der notwendige code ja in die jeweilige "Textbox", bzw in dessen Ereignis-Auslöser geschrieben wird.

Danke für die " zurechtweisung" zu logischerem Denken ;-)

Danke wiederum & Grüße
Lorenz