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

txtfelder auf Registerkarten ansprechen

txtfelder auf Registerkarten ansprechen
04.06.2018 12:47:49
Detlef
Hallo Zusammen,
ich war bislang nur leser hier im Forum, nun muss ich aber doch auch mal eine Frage stelle.
Ich habe ein Userform, darauf ein Register mit einigen Pages.
Auf einem großen Teil der Pages sind die gleichen Textfelder.
Wenn ich nun auf der Page 0 oder 1 (oder irgend eine andere) ein bestimmtes Textfeld verlasse, soll ein anderes Textfeld auf der Selben Page gefüllt werden.
Ich kann das Textfeld mit Namen ansprechen, dies würde ich aber auf Grund der Code Menge welche dadurch entsteht vermeiden wollen.
Frage, wie kann ich Textfelder auf der gerade aktiven Page ansprechen ohne den Namen nutzen zu müssen. Ich kann dem Textfeld ein TAG mitgeben, aber ich bekomme es nicht angesprochen.
Für sachdienliche Hinweise bedanke ich mit herzlichst.
Detlef

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

Betreff
Datum
Anwender
Anzeige
AW: txtfelder auf Registerkarten ansprechen
04.06.2018 14:30:47
ChrisL
Hi Detlef
Auf einem großen Teil der Pages sind die gleichen Textfelder.
Wenn es Register sind, dann wären nicht nur auf einem "grossen Teil" die gleich Textfelder. Daher die Kontrollfrage, ob du auch tatsächlich Register oder vielleicht doch Multiseiten benutzt.
...ein bestimmtes Textfeld verlasse, soll ein anderes Textfeld auf der Selben Page gefüllt werden.
Geht es dir um den Sprung (=TextBox-Eigenschaft "TabIndex") ins nächste Feld? Und nach welcher Logik soll gesprungen werden (woher soll Excel wissen welches das nächste Textfeld ist, wenn nicht über Namen)?
TextBox.Tag
Was wolltest du mit dem Tag?
cu
Chris
Anzeige
AW: txtfelder auf Registerkarten ansprechen
04.06.2018 16:42:39
Detlef
Hallo Chris,
erstmal Danke für die Rückmeldung.
Ich hole mal etwas aus......
Im Hauptformular frage ich eine DB ab, sowas wie eine Adressdatenbank.
In den Registerkarten finden sich die Einträgen aus der DB.
Ein Eintrag hat Name Vorname etc. und auch die Anrede.
Nun möchte ich, beim Verlassen des Feldes Adressart überprüfen, ob in der Anrede etwas drin steht.
Wenn ja, gut wenn nicht, dann soll aus dem vorher gefüllten Feldern Name, Vorname, Titel eine Anrede zusammen gebaut werden.
Das Feld welches ich verlasse kenne ich, nun möchte ich einfach anhand des TAGs oder des TabIndex das Anrede Feld finden.
Den Tag könnte ich dann für alle Anrede Felder auf den betreffenden Registerpages gleich setzten.
Es muss halt immer nur dir aktive Page genutzt werden.
Ich hoffe das war nicht zu viel und dennoch verständlich.
Gruß, Det
Anzeige
AW: txtfelder auf Registerkarten ansprechen
04.06.2018 17:02:38
ChrisL
Hi
Ich bin mir weiterhin unsicher, ob du ein Register oder Multipage verwendest. Sieht beides gleich aus, aber ist ein Unterschied.
Wo ist der Unterschied, ob du das Feld "Anrede" anhand des Tags' oder anhand des Namens identifizierst.
Ich verstehe noch nicht, warum das Ansprechen des Anrede-Feldes per Name so viel Code produzieren soll. Vermutlich würde eine abgespeckte Beispieldatei zum Verständnis helfen.
cu
Chris
AW: txtfelder auf Registerkarten ansprechen
04.06.2018 18:14:51
Detlef
Hallo,
Von 29 Registerkarten sind etwa 16 gleich. 8 haben nicht alle Felder und der Rest ist komplett anders.
Daher ja, es ist ein Register.
Vom Prinzip her wäre der zu erstellende Code:
If UF.M1_Anrede = "" And UF.M1_Adressart = "H" Then UF.M1_Anrede = "Sehr geehrter Herr " & UF.M1_Titel & " " & UF.M1_Vorname & " " & UF.M1_Name
Das muss ich dann natürlich für H = Herren und F = Damen haben.
Es gibt auch andere Kombinationen, aber die beiden wären die wichtigsten.
Dazu kommen noch weitere solche Fälle auch der Registerkarte.
Vielleicht sehe ich auch den Wald vor lauten Bäumen nicht mehr.
Detlef
Anzeige
AW: txtfelder auf Registerkarten ansprechen
04.06.2018 18:49:25
ChrisL
Hi Detlef
Ich markiere die Frage für dich als "offen". Weil die Beschreibung m.E. nicht auf ein Register passt, wüsste ich nicht wie ich helfen könnte.
Ich sehe zwar den Wald aber die Bäume nicht. Was ich von hier aus sagen kann, ist dass du die Grundidee überdenken solltest. Vielleicht kannst du anstelle der 29 Pages ein paar Inhalte dynamisch auf wenige Forms/Pages laden.
cu
Chris
AW: txtfelder auf Registerkarten ansprechen
05.06.2018 08:29:50
ChrisL
Hi Detlef
Mit MultiPage aber ohne Klassenprogrammierung.
Gib den Textfeldern eine Laufnummer analog der Page-Nummer.
z.B. Anrede0, Anrede1...
Private Sub TextBox1_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Call Uebertrag(MultiPage1)
End Sub

Private Sub TextBox3_Exit(ByVal Cancel As MSForms.ReturnBoolean)
Call Uebertrag(MultiPage1)
End Sub

Private Sub Uebertrag(mp As MultiPage)
With MultiPage1
.Pages(.Value).Controls("Anrede" & .Value) = "blabla"
End With
End Sub
cu
Chris
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige