Herbers Excel-Forum - das Archiv

Wert eines ListBox elements

Informationen und Beispiele zu den hier genannten Dialog-Elementen:
ListBox UserForm
Bild

Betrifft: Wert eines ListBox elements
von: hans jörg
Geschrieben am: 19.11.2003 22:56:34
hallo,
frage:
wenn ich auf ein ListBox element zugreifen will mach ich das dann nicht
mit ListBox.Value?
ich habe in meiner listbox zahlen und auch text und wenn ich nun eine zahl oder einen text doppelt anklicke sollte er im tabellenblatt danach suchen.
wie bekomme ich nun die Zahl bzw den Text heraus (sollte doch mit ListBox.Value funktionieren?? tut es aber nicht)
kann mir jemand weiterhelfen

danke hans j

Bild

Betrifft: AW: Wert eines ListBox elements
von: Matthias G
Geschrieben am: 19.11.2003 23:35:52
Hallo Hans,
also so geht das ganze schon:


Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
MsgBox ListBox1.Value
End Sub


Es kommt nun drauf an, wie Du weiter verfährst, um den angeklickten Wert weiterzuverarbeiten.
Auf keinen Fall das UF mit Unload schließen, sondern mit "Me.Hide", sonst gehen die enthaltenen Werte für das aufrufende Modul verloren.
Vielleicht war's das schon?

Gruß,
Matthias
Bild

Betrifft: ne nicht ganz hier mal mein bsp.
von: helge
Geschrieben am: 19.11.2003 23:47:07
Dim MyArray(6, 1)



Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Cells.Find(What:=ListBox1.Value, After:=[A1], LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, _
SearchFormat:=False).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
[D1].PasteSpecial
'Selection.Copy
End Sub





Private Sub UserForm_Initialize()
Dim i As Single
ListBox1.ColumnCount = 1
'Load columns 2 and three of MyArray
MyArray(0, 0) = "1"
MyArray(1, 0) = "2"
MyArray(2, 0) = "3"
MyArray(3, 0) = "August"
MyArray(4, 0) = "Four"
MyArray(5, 0) = "16"
ListBox1.List() = MyArray
End Sub



also wenn ich nun im listenfeld auf meinen 1. eintrag doppelt klicke soll er mir im tabellenblatt nach der "1" suchen aber mit ListBox1.Value geht das leider nicht
was mache ich falsch???

hans j
Bild

Betrifft: ne nicht ganz hier mal mein bsp.
von: hans j
Geschrieben am: 19.11.2003 23:48:16
Dim MyArray(6, 1)



Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Cells.Find(What:=ListBox1.Value, After:=[A1], LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True, _
SearchFormat:=False).Select
Range(Selection, Selection.End(xlDown)).Select
Selection.Copy
[D1].PasteSpecial
'Selection.Copy
End Sub





Private Sub UserForm_Initialize()
Dim i As Single
ListBox1.ColumnCount = 1
'Load columns 2 and three of MyArray
MyArray(0, 0) = "1"
MyArray(1, 0) = "2"
MyArray(2, 0) = "3"
MyArray(3, 0) = "August"
MyArray(4, 0) = "Four"
MyArray(5, 0) = "16"
ListBox1.List() = MyArray
End Sub



also wenn ich nun im listenfeld auf meinen 1. eintrag doppelt klicke soll er mir im tabellenblatt nach der "1" suchen aber mit ListBox1.Value geht das leider nicht
was mache ich falsch???

hans j
Bild

Betrifft: AW: ne nicht ganz hier mal mein bsp.
von: andre
Geschrieben am: 20.11.2003 11:34:03
hallo hans,
- searchformat kann enfallen,
- copy gekürzt
- myArray gedimt
--> keine fehlerbetrachtung, wenn im bereich keine daten gefunden werden --> ergibt fehler bei ...).select



Private Sub ListBox1_DblClick(ByVal Cancel As MSForms.ReturnBoolean)
Cells.Find(What:=ListBox1.Value, After:=[A1], LookIn:=xlFormulas, LookAt:= _
xlWhole, SearchOrder:=xlByRows, SearchDirection:=xlNext, MatchCase:=True).Select
Range(Selection, Selection.End(xlDown)).Copy [D1]
End Sub





Private Sub UserForm_Initialize()
Dim i As Single, myArray(5, 0)
ListBox1.ColumnCount = 1
'Load columns 2 and three of MyArray
myArray(0, 0) = "1"
myArray(1, 0) = "2"
myArray(2, 0) = "3"
myArray(3, 0) = "August"
myArray(4, 0) = "Four"
myArray(5, 0) = "16"
ListBox1.List() = myArray
End Sub



gruss andre
Bild

Betrifft: das klappt leider nicht :-(
von: hans j
Geschrieben am: 20.11.2003 18:25:38
hi andre er sucht mir nicht den listeneintrag und auch markieren tut er nicht geschweige denn kopieren.
hast du einen tip wie es noch gehen kann???

danke hans j
Bild
Excel-Beispiele zum Thema " Wert eines ListBox elements"
Mehrfachauswahl aus ListBox auslesen Gefilterte Daten in eine ListBox einlesen
Dateien aus Listbox auslesen und öffnen Listbox-Eintrag durch Mausbewegung markieren
ListBox-Einträge auswechseln Horizontal angeordnete Elemente in eine ListBox übernehmen
Tabellenblattnamen in eine ListBox einlesen ListBox bei Eintrag erweitern