Thema Datum  Von Nutzer Rating
Antwort
04.06.2009 16:31:56 nemesis
NotSolved
04.06.2009 17:58:01 Holger
NotSolved
04.06.2009 19:32:31 Nemesis
NotSolved
05.06.2009 07:40:49 Nemesis
NotSolved
05.06.2009 08:33:26 Nemesis
NotSolved
Blau Aw:Aw:Aw:Aw:Excel: Listboxen
05.06.2009 13:14:06 Holger
NotSolved

Ansicht des Beitrags:
Von:
Holger
Datum:
05.06.2009 13:14:06
Views:
1199
Rating: Antwort:
  Ja
Thema:
Aw:Aw:Aw:Aw:Excel: Listboxen
Hallo Nemesis,
du hättest schon schreiben müssen, dass du Multiselect-Listboxen verwendest! Ich mag es nicht, wenn ich einige Zeit verwende, um für jemanden eine Lösung zu entwerfen, und dann zur Kenntnis nehmen muss, dass die Lösung nicht funktioniert - nicht etwa, weil sie den geforderten Spezifikationen nicht entspricht, sondern weil der Fragende falsche oder unvollständige Spezifikationen gegeben hat. Wenn dir das mit einem Softwarehaus passiert wäre, müsstest du zweimal zahlen. Mir nimmst du die Zeit weg, die ich vielleicht für andere Hilfesuchende verwenden könnte. Bemühe dich in Zukunft, deine Anforderung wirklich prazise und vollständig in fehlerfreiem Deutsch und verständlich niederzuschreiben! Dann wird dir auch schneller geholfen.
Bei Multiselect-Listboxen wird das Click-Ereignis nicht ausgelöst, weil ihr Value immer 'Null' ist. Deshalb muss man sich etwas anderes einfallen lassen.
Private Sub ListBox1_Mouseup(ByVal Button As Integer, ByVal Shift As Integer, _
ByVal X As Single, ByVal Y As Single)
c = ""
For j = 0 To ListBox1.ListCount - 1
a = ListBox1.List(j)
If ListBox1.Selected(j) = True Then
b = vbCrLf + "Wert " + CStr(a) + " in ListBox2 nicht vorhanden."
For i = 0 To ListBox2.ListCount - 1
If ListBox2.List(i) = a Then
ListBox2.Selected(i) = True
b = ""
End If
Next i
c = c + b
b = vbCrLf + "Wert " + CStr(a) + " in ListBox3 nicht vorhanden."
For i = 0 To ListBox3.ListCount - 1
If ListBox3.List(i) = a Then
ListBox3.Selected(i) = True
b = ""
End If
Next i
c = c + b
Else
For i = 0 To ListBox2.ListCount - 1
If ListBox2.List(i) = a Then
ListBox2.Selected(i) = False
End If
If ListBox3.List(i) = a Then
ListBox3.Selected(i) = False
End If
Next i
End If
Next j
If Not (c = "") Then MsgBox c
End Sub



Nemesis schrieb am 05.06.2009 08:33:26:

Hi nochmal!

Hier mal mein Ansatz für eine "for each" Lösung (funktioniert allerdings nicht):

Private Sub Listbox2_Click()
Eintrag_Markieren (Listbox2.Object)
End Sub

Function Eintrag_Markieren(Aktuelle_Listbox As Object)

For i = 0 To Aktuelle_Listbox.ListCount - 1

If Aktuelle_Listbox.Selected(i) = True Then

For Each Listbox In Tabelle1.Shapes

For j = 0 To Listbox.ListCount - 1

If Aktuelle_Listbox.List(i) = Listbox.List(j) Then
Listbox.Selected(j) = True
Exit For
End If

Next

Next

End If

Next

End Function



Fehlermeldung bei "Listbox.ListCount" --> "Objekt unterstützt diese Eigenschaft oder Methode nicht"
--> weiß einer weshalb das nicht funktioniert?
--> Wie muss der Code geändert werden, damit es funktioniert?

Gruß, Nemesis

*************************************************************

Nemesis schrieb am 05.06.2009 07:40:49:

Hallo Holger!

Für die Markierung von gleichen Einträgen habe ich dein Vorschlag "leicht" abgeändert.
Danke aber, dass du mich auf diesen Weg gebracht hast ^^
Hier mein Code, bezogen auf 2 Listboxen (suche nun noch eine vor Lösung für alle Listboxen in meinem Sheet):

For i = 0 To Listbox1.ListCount - 1

If Listbox1.Selected(i) = True Then
For j = 0 To Listbox2.ListCount - 1
If Listbox1.List(i) = Listbox2.List(j) Then
Listbox2.Selected(j) = True
Exit Sub
End If
Next j
End If
Next i


Gruß, Nemesis


************************************************************

Holger schrieb am 04.06.2009 17:58:01:

Hallo nemesis,
versuche folgendes Quick-and-Dirty-Makro im Code der UserForm:
Private Sub ListBox1_Click()
b = "Wert in ListBox2 nicht vorhanden."
c = "Wert in ListBox3 nicht vorhanden."
For i = 0 To ListBox2.ListCount - 1
If ListBox2.List(i) = ListBox1.Value Then
ListBox2.Value = ListBox1.Value
b = ""
Exit For
End If
Next i
For i = 0 To ListBox3.ListCount - 1
If ListBox3.List(i) = ListBox1.Value Then
ListBox3.Value = ListBox1.Value
c = ""
Exit For
End If
Next i
If not(b + c = "") Then MsgBox b + vbCrLf + c 'b+c ungleich "", aber Zeichen machen Probleme im Forum
End Sub
Gruß
Holger


nemesis schrieb am 04.06.2009 16:31:56:

Hi @ll!

Tue mich gerade etwas schwer mit Listboxen in meinem Excelsheet.

Habe drei Listboxen, jeweils mit den Einträgen "x1", "x2", und "x3".
Wenn ich nun in der ersten Listbox den Eintrag "x1" markiere, möchte ich, dass dieser ebenfalls in den beiden anderen Listboxen markiert wird. Wäre der Eintrag in keiner der anderen Listboxen vorhanden, möchte ich eine MsgBox.

Kann mir jemand helfen?

Gruß im Voraus!

Nemesis

Ihre Antwort
  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen
Thema: Name: Email:



  • Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
  • Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
  • Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
  • Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
  • Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei Antworten auf Ihren Beitrag zu benachrichtigen

Thema Datum  Von Nutzer Rating
Antwort
04.06.2009 16:31:56 nemesis
NotSolved
04.06.2009 17:58:01 Holger
NotSolved
04.06.2009 19:32:31 Nemesis
NotSolved
05.06.2009 07:40:49 Nemesis
NotSolved
05.06.2009 08:33:26 Nemesis
NotSolved
Blau Aw:Aw:Aw:Aw:Excel: Listboxen
05.06.2009 13:14:06 Holger
NotSolved