Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
672to676
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
672to676
672to676
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

listbox listindex zurücksetzen

listbox listindex zurücksetzen
28.09.2005 21:57:48
Ingo
Guten Abend,
ein kleines Problem bei der Auswahl eines Wertes aus einer ListBox.
An erster Stelle (Index 0 ) stehen die Überschriften.
Die sollen nicht ausgewählt werden können. Wie kann ich im
click-Ereignis die Auswahl so verhindern, dass auch die Markierung
des Wertes wieder verschwindet ? Zurücksetzen auf Index -1 scheint es
offensichtlich nicht zu sein.
Danke für einen Tip
Gruß, Ingo

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: listbox listindex zurücksetzen
28.09.2005 22:13:26
Matthias
Hallo Ingo,
warum schreibst du die Überschrift nicht als Label über die Listbox?
Gruß Matthias
AW: listbox listindex zurücksetzen
28.09.2005 22:32:33
Ingo
Hallo Matthias,
weil ich bei der Größe des Projektes auf jedes überflüssige Objekt,
bzw. jede vermeidbare Codezeile verzichten möchte.
(Und weil ich jetzt neugierig bin und wissen will, wie es geht ;-))
Gruß, Ingo
AW: listbox listindex zurücksetzen
28.09.2005 22:44:45
Matthias
Hallo Ingo,
weil ich bei der Größe des Projektes auf jedes überflüssige Objekt,
bzw. jede vermeidbare Codezeile verzichten möchte.

Das gilt nicht, dafür brauchst du sicher mehr Code als mit dem Label ;-)
(Und weil ich jetzt neugierig bin und wissen will, wie es geht ;-))
Das gilt schon eher ;-)
Aber ich merke grade, ich krieg es auch nicht hin. :-(
Mein Versuch:

Option Explicit
Dim merker
Private Sub ListBox1_Click()
Label1.Caption = merker
If ListBox1.ListIndex = 0 Then
'MsgBox "hey!"
ListBox1.Value = merker
DoEvents
'ListBox1.ListIndex = -1
Else
merker = ListBox1.Value
End If
End Sub
Private Sub UserForm_Initialize()
Label1.Caption = ""
With ListBox1
.AddItem "Name"
.AddItem "Sepp"
.AddItem "Hans"
.AddItem "Fritz"
.ListIndex = 1
End With
End Sub

Muss ich leider passen!
Gruß Matthias
Anzeige
AW: listbox listindex zurücksetzen
28.09.2005 22:59:16
Peter
Servus,
hmm ist sicher keine optimale Lösung, vieleicht reichts sogar.
Zumindest wird die Überschrift nicht markiert.
Code sparst du dir mit meinem Bsp. mit Sicherheit nicht, eher im Gegenteil ;-)
Private Sub ListBox1_Click()
With Me.ListBox1
If .ListIndex = -1 Then Exit Sub
If .ListIndex = 0 Then
.Clear
.AddItem ("Überschrift")
.AddItem ("Hund")
.AddItem ("Katze")
.AddItem ("Maus")
End If
End With
End Sub
Private Sub UserForm_Initialize()
With Me.ListBox1
.AddItem ("Überschrift")
.AddItem ("Hund")
.AddItem ("Katze")
.AddItem ("Maus")
End With
End Sub

MfG
Peter
Anzeige
AW: listbox listindex zurücksetzen
28.09.2005 23:36:39
Ingo
Oha, da rauschen meine array aber nur so durch die Drähte ;-)
Naja, jetzt sind wir ja schon zu dritt an "der Sache 'dran".
Du wirst mir verzeihen, wenn ich Deine Lösung erst mal nur zur Kenntnis nehme
aber noch nicht verwende ;-)
Noch gebe ich die Hoffnung auf eine "schau-mal-wie-einfach" Lösung nicht auf.
Gruß, Ingo
AW: listbox listindex - "schau-mal-wie-einfach"
28.09.2005 23:38:30
Matthias
Hallo ingo,
ich habs!

Option Explicit
Dim merker
Private Sub ListBox1_BeforeUpdate(ByVal Cancel As MSForms.ReturnBoolean)
With ListBox1
If .ListIndex = 0 Then
Cancel = True
.ListIndex = merker
Else
merker = .ListIndex
End If
End With
End Sub
Private Sub UserForm_Initialize()
Label1.Caption = ""
With ListBox1
.AddItem "Name"
.AddItem "Sepp"
.AddItem "Hans"
.AddItem "Fritz"
.ListIndex = 1
End With
End Sub

Grüße,
Matthias
Anzeige
AW: listbox listindex - "schau-mal-wie-einfach"
28.09.2005 23:50:23
K.Rola
Hallo,
was hat das Label für eine Funktion?
Gruß K.Rola
AW: listbox listindex - "schau-mal-wie-einfach"
28.09.2005 23:58:30
Matthias
Hallo K.Rola,
was hat das Label für eine Funktion?
Keine mehr, das war zum rumprobieren, hab ich vergessen zu löschen ;-)
Gruß Matthias
AW: listbox listindex - "schau-mal-wie-einfach"
29.09.2005 00:09:46
Matthias
Hallo K.Rola,
ursprünglich war das Label dazu gedacht, deinen Vornamen im Klartext anzuzeigen ;-)
Gruß Matthias
"schau-mal-wie-einfach"..grübel ;-))
28.09.2005 23:54:03
Ingo
Hi Matthias,
genial daneben ;-) ich wollte ja nicht das Schliessen der UF verhindern sondern
die Markierung von Index 0 in der TextBox nicht zulassen.
Aber Deinen Vorschlag werde ich unter "kann man gut verwenden" ablegen ;-)
Danke und Gruß, Ingo
Anzeige
AW: "schau-mal-wie-einfach"..grübel ;-))
28.09.2005 23:57:30
Matthias
Hallo Ingo,
na, na, mit Cancel = True kann man in diesem Zusammenhang nicht das Schließen der UF verhindern!
Nur im Userform_QueryClose()-Ereignis!
Warum das hier einen Effekt hat, weiß ich auch nicht.
Gruß Matthias
jetzt war ich verwirrt,...
29.09.2005 00:08:01
Matthias
Hallo Ingo,
...denn ich dachte, deine Antwort bezog sich auf meinen Beitrag, den ich versehentlich hier eingestellt habe:
https://www.herber.de/forum/messages/674142.html
(Ersetze hier "Hans" durch "Ingo")
Es ist spät geworden... 8-)
Gruß Matthias
bin immer noch verwirrt!
29.09.2005 00:13:30
Matthias
Hallo Ingo,
genial daneben ;-) ich wollte ja nicht das Schliessen der UF verhindern sondern
die Markierung von Index 0 in der TextBox nicht zulassen.

funktioniert meine Lösung bei Dir denn nicht?
Gruß Matthias
Anzeige
AW: bin immer noch verwirrt!
29.09.2005 00:24:54
Ingo
Hi Matthias,
also wenn Deine Lösung das Markieren des Eintrages nicht zulassen sollte,
dann funktioniert es bei mir tatsächlich nicht.
Insofern bin ich mit dem Vorschlag von K.Rola recht zufrieden.
War doch alles in allem ein nettes Gewusel wegen dieser kleinen Frage ;-)
Morgen denke ich mir eine andere aus...lach
So, ich muß jetzt in die Koje, der Wecker klingelt bald.
Gute Nacht
Ingo
AW: bin immer noch verwirrt!
29.09.2005 00:26:01
Matthias
Hallo Ingo,
meine Lösung funnktioniert aber.
Gute Nacht
Matthias
AW: listbox listindex zurücksetzen
28.09.2005 23:46:13
K.Rola
Hallo,
ist zwar offenbar heute nicht mein Tag, aber dennoch:

Private Sub ListBox1_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
If Button = 1 And ListBox1.ListIndex = 0 Then ListBox1.ListIndex = -1
End Sub

Gruß K.Rola
Anzeige
AW: aber dennoch..
29.09.2005 00:00:52
Ingo
Hmm...wenn das heute nicht Dein Tag ist
und Du die Lösung dennoch beiläufig parat hast,
möchte ich an Deinen guten Tagen
gern' ein richtiges Problem haben ;-)
Danke und Gruß
Ingo
AW: aber dennoch..
29.09.2005 00:03:47
Matthias
Hallo Ingo,
naja, man kann den ersten Eintrag noch mit den Cursortasten markieren.
Gruß Matthias
AW: aber dennoch..
29.09.2005 00:11:49
K.Rola
Hallo,
sag ja, nicht mein Tag, deine Variante ist besser.
Gruß K.Rola

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige