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

Problem Userform

Problem Userform
05.02.2016 16:30:04
Peter
Hallo Excelfreunde,
ich habe ein Problem bei Userform.
Es besteht aus zwei Listboxen und mehreren Textboxen.
Von beiden Listboxen werden Daten in Textboxen übertragen durch Klick.
Nach dem Klick auf Listbox 2 soll wenn Wert von Textbox9 = Wert Textbox 10, Makro ausgeführt werden.
Danke für Eure Hilfe.
Gruss Peter

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Problem Userform
05.02.2016 16:35:26
Hajo_Zi
Hallo Peter
if Textbox9 = Textbox10 then
Makro
end if

AW: Problem Userform nicht behoben
05.02.2016 19:26:14
Peter
Hallo Hajo,
danke für Deine Antwort. Das hatte ich ausprobiert, funktioniert aber nicht wie ich es brauche.
Ich klicke auf Eintrag Listbox1 - Wert in TextBox9. Klicke dann auf Eintrag Listbox2 - Wert in
TextBox10. Wenn dann der Wert von TextBox 9 gleich ist mit TextBox10, dann soll der Eintrag in
TextBox 10 und mehreren Textboxen der Eintrag gelöscht werden und beim ListBox Eintrag die Markierung aufgehoben werden. Dies aber nicht per Button. Über TextBox10_Change geht dies leider nicht. Genau
hier habe ich das Problem.
Gruss Peter

Anzeige
AW: Problem Userform
05.02.2016 20:23:50
Peter
Hallo Hajo,
der u.a. Eintrag bringt zwar den gewünschten Erfolg. Aber die MsgBox wird zweimal hintereinander
ausgeführt.
Private Sub TextBox10_Change()
If Me.TextBox10.Value = Me.TextBox9.Value Then
Me.TextBox5.SetFocus
MsgBox "Bitte wählen Sie einen anderen Eintrag."
Call CommandButton8_Click
End If
ListBox2.ListIndex = -1
End Sub

Was mache ich bitte falsch?
Danke Gruss Peter

AW: Problem Userform
05.02.2016 20:48:08
Matthias
Hallo
Private Sub ListBox1_Click()
TextBox1 = ListBox1
End Sub
Private Sub ListBox2_Click()
If ListBox2 = TextBox1 Then
MsgBox "Bitte anderen Eintrag wählen"
Else
TextBox2 = ListBox2
End If
End Sub
Gruß Matthias

Anzeige
AW: Problem Userform
06.02.2016 06:02:05
Peter
Hallo Matthias,
Danke für Deine Antwort. Du hast meine Aufgabe nicht verstanden.
Mit der Listbox1 wähle ich einen Eintrag aus und mit Listbox2 einen anderen. Beide Einträge werden
benötigt. Jeweils 5 Zellen aus diesen Einträgen. Jetzt soll verhindert werden, dass versehentlich
in beiden Listboxen zweimal der selbe Eintrag ausgewählt wird. Mit dem von mir gefertigten Makro
wird erreicht, dass wenn in Listbox1 der Eintrag z.B. 2 ausgewählt wird und in Listbox2 der Eintrag 2,
dann werden alle 5 Listboxen geleert. Wird jedoch in Listbox2 ein anderer Eintrag gewählt bleibt dieser bestehen. Das funktioniert. Jetzt wollte ich nur gerne, dass nach dem Löschen die Msgbox eingeblendet,
wird "bitte wählen Sie einen anderen Eintrag". So wie ich diese Msgbox platziert habe, wird diese jedoch zwei mal angezeigt.
Wie kann ich dies bitte verhindern.
Gruss Peter

Anzeige
AW: Problem Userform
06.02.2016 11:11:15
EtoPHG
Hallo Peter,
Du hast es nicht verstanden, dein Problem eindeutig zu erklären!
Einmal ist von 2 Listboxen und dann von 5. Na was denn nun?
Der Zweck des Übertragens in Textboxen ist ebenfalls nirgends erläutert.
Besser als mehrdeutige Erklärungen, wäre eine Beispielmappe mit ausführlicher Problembeschreibung.
Wenn du deinen Listboxen die Eigenschaften ListType 1 - fmListStyleOption und MultiSelect 2 - fmMultiSelectExtendet verpasst, kannst du die Einträge direkt in der Listbox auswählen. Damit kann eine Eintrag nicht 2mal gewählt werden und die Textboxen erübrigen sich eventuell. Die Kontrolle, wieviel Einträge gewählt sind, machst du über die ListBox.Selected(index) Eigenschaft.
Gruess Hansueli

Anzeige
AW: Problem Userform
06.02.2016 17:17:49
Peter
Hallo Hansueli,
Danke für Deine Antwort.
Die Datei die ich hier habe ist sehr umfangreich.
Nochmals zum Aufbau der Userform:
1. Listbox1 und 5 Textboxes
2. Listbox2 und 5 Textboxes
Mit Klick auf Listbox1 Zeile1 werden 5 Daten in die Textboxes übernommen. Ebenso bei Listbox2 5 Daten in weitere 5 Textboxes.
Nun findet beim Einfügen der zweiten Datenreihe aus Listbox2 eine Prüfung statt mit dem Makro
Private Sub TextBox10_Change()
If Me.TextBox10.Value = Me.TextBox9.Value Then
MsgBox "Bitte wählen Sie einen anderen Eintrag."
Call CommandButton8_Click
End If
End Sub
und
Private Sub CommandButton8_Click()
'An:
TextBox10 = ""
TextBox5 = ""
TextBox5.Enabled = True
TextBox5.BackColor = vbWhite
TextBox6 = ""
TextBox6.Enabled = True
TextBox6.BackColor = vbWhite
TextBox7 = ""
TextBox7.Enabled = True
TextBox7.BackColor = vbWhite
TextBox8 = ""
TextBox8.Enabled = True
TextBox8.BackColor = vbWhite
ListBox2.ListIndex = -1
End Sub
Wenn Textbox10 = TextBox9 dann werden die Einträge in den Textboxes der zweiten Listbox geleert und die Auswahl in der Listbox2 aufgehoben. Es soll dann eine Mitteilung per Msgbox erfolgen, dass eine neue Auswahl getroffen werden soll.
Das Problem ist, dass diese Msgbox zweimal aufgeht.
Ich hoffe ich habe das Problem jetzt ausreichend beschrieben.
Besten Dank für Eure Hilfe.
Gruss Peter

Anzeige
AW: Problem Userform behoben
06.02.2016 18:20:24
Peter
Hallo Excel-Freunde,
habe das Problem behoben. Benutze keine Msgbox mehr sondern ein Label. Mittels Makro lasse ich beim Update-Ereignis das Label einblenden mittels mousemove wieder ausblenden.
Wünsche ein schönes Wochenende.
Gruss Peter

AW: Problem Userform
05.02.2016 20:42:20
Daniel
Hi
ist der Weg über die TextBoxen nicht unnötig?
du schreibst ja den Listbox1-Wert in die Textbox9 und den Listbox2-Wert in die Textbox10
dann sollte folgender Code im Click-Event der Listbox2 ausreichen:
IF Listbox1.Value = Listbox2.Value Then Call Makro
Gruß Daniel

AW: Problem Userform
06.02.2016 06:01:04
Peter
Hallo Daniel,
Danke für Deine Antwort. Du hast meine Aufgabe nicht verstanden.
Mit der Listbox1 wähle ich einen Eintrag aus und mit Listbox2 einen anderen. Beide Einträge werden
benötigt. Jeweils 5 Zellen aus diesen Einträgen. Jetzt soll verhindert werden, dass versehentlich
in beiden Listboxen zweimal der selbe Eintrag ausgewählt wird. Mit dem von mir gefertigten Makro
wird erreicht, dass wenn in Listbox1 der Eintrag z.B. 2 ausgewählt wird und in Listbox2 der Eintrag 2,
dann werden alle 5 Listboxen geleert. Wird jedoch in Listbox2 ein anderer Eintrag gewählt bleibt dieser bestehen. Das funktioniert. Jetzt wollte ich nur gerne, dass nach dem Löschen die Msgbox eingeblendet,
wird "bitte wählen Sie einen anderen Eintrag". So wie ich diese Msgbox platziert habe, wird diese jedoch zwei mal angezeigt.
Wie kann ich dies bitte verhindern.
Gruss Peter
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige