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

Userform.Listbox Markierung aufheben

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

Betreff
Datum
Anwender
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 08:35:49
Alwin Weisangler
Hallo Mirel,

Setze entweder den Tabindex der Listbox auf 0 oder Textbox1.SetFocus.
Dann erreichst du diesen Zustand.

Gruß Uwe
AW: Userform.Listbox Markierung aufheben
25.11.2023 09:56:25
onur
Bei SingleSelect-Listboxen
gewählter Eintrag: ListIndex= 0 für den ersten, 1 für den 2. usw usw
und -1 für keinen ausgewählten.
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 10:25:46
Mirel
Danke Euch allen,
aber es geht einfach nicht!
Option Explicit
Private Sub UserForm_Activate()
Dim WP As Worksheet
Set WP = ThisWorkbook.Worksheets("P")
With Me.RGStand_ListProjekt
.Clear
.ColumnCount = 2
.ColumnWidths = "50;200"
.Enabled = True
.MatchEntry = fmMatchEntryComplete
.MousePointer = 0
.MultiSelect = fmMultiSelectSingle
.TabIndex = 1
.TabStop = False
Dim i As Integer
For i = 2 To WP.Cells(Rows.Count, 2).End(xlUp).Row
.AddItem
.List(i - 2, 0) = WP.Cells(i, 2).Value
.List(i - 2, 1) = WP.Cells(i, 3).Value
Next i
End With
End Sub

Private Sub RGStand_ListProjekt_Click()
With RGStand_ListProjekt
TextBox1.Text = .List(.ListIndex, 1)
End With
Lst
TextBox1.SetFocus
End Sub
Sub Lst()
Dim i As Integer
With Me.RGStand_ListProjekt
For i = 0 To .ListCount - 1
If .Selected(i) = True Then
.Selected(i) = False
End If
Next
End With
End Sub
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 10:41:20
onur
Nimm ein anderes Event. Das Klick-Eventmakro wird VOR dem Klick ausgeführt. Soll heissen: du klickst auf nr2, Bevor das ausgeführt wird, kommt das Makro und setzt auf 0, aber dann wird erst auf nr2 gesetzt.
Das heisst: das Klicken bedeutet eine Auswahl bei der Listbox, die dann auch ausgeführt wird.
Das ist Quatsch:
If .Selected(i) = True Then

.Selected(i) = False
End If

da exakt das selbe wie
.Selected(i) = False

AW: Userform.Listbox Markierung aufheben
25.11.2023 11:38:50
Mirel
Danke an alle,

habe es so gelöst!
Private Sub RGStand_ListProjekt_MouseUp(ByVal Button As Integer, ByVal Shift As Integer, ByVal X As Single, ByVal Y As Single)
On Error GoTo ErrorHandler
With RGStand_ListProjekt
If .ListIndex >= 0 And .ListIndex .ListCount Then
TextBox1.Text = .List(.ListIndex, 1)
End If

TextBox1.SetFocus
Sleep 300
.ListIndex = -1
End With
Exit Sub
ErrorHandler:
Debug.Print Err.Description
End Sub
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 09:56:04
Mirel
Hallo,
scheinbar bin ich oder meine List box zu blöde!
Private Sub RGStand_ListProjekt_Click()
With RGStand_ListProjekt
TextBox1.Text = .List(.ListIndex, 1)
End With
bolCode = False
Lst
TextBox1.SetFocus
End Sub
Sub Lst()
If Not bolCode Then
With Me.RGStand_ListProjekt
If .ListIndex > -1 Then
MsgBox .Value
.ListIndex = -1
bolCode = True
End If
End With
Else
bolCode = False
End If
End Sub
Es wird die Markierung nicht aufgehoben!
Danke!
Gruß
Mirel
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 09:06:08
Mirel
Hallo Uwe,
Danke für Deine Ratschlag!

Leider funktioniert es nicht.
Private Sub RGStand_ListProjekt_Click()
With RGStand_ListProjekt
TextBox1.Text = .List(.ListIndex, 1)
Dim i As Integer
For i = 0 To .ListCount - 1
MsgBox i
If .Selected(i) = True Then
.Selected(i) = False
Else
End If
Next
.TabIndex = 0
End With
TextBox1.SetFocus

End Sub
AW: Userform.Listbox Markierung aufheben
25.11.2023 09:22:47
Alwin Weisangler
Hallo Mirel,

klar funktionierts. Anbei deine Demodatei.
https://www.herber.de/bbs/user/164575.xlsm

Da ist ledglich der TabIndex auf 0 gesetzt.

Gruß Uwe
Anzeige
AW: Userform.Listbox Markierung aufheben
25.11.2023 09:40:49
Alwin Weisangler
ich hatte es falsch verstanden. Du willst nach Klick in die Listbox am Ende deselektieren.
Ändere es so:



Option Explicit

Sub LbLaden()
Dim WP As Worksheet, i&
Set WP = ThisWorkbook.Worksheets("P")
With Me.RGStand_ListProjekt
.Clear
.ColumnCount = 2
.ColumnWidths = "50;200"
For i = 2 To WP.Cells(Rows.Count, 2).End(xlUp).Row
.AddItem
.List(i - 2, 0) = WP.Cells(i, 2).Value
.List(i - 2, 1) = WP.Cells(i, 3).Value
Next i
End With
TextBox1.SetFocus
End Sub

Private Sub RGStand_ListProjekt_Click()
Dim i&
With RGStand_ListProjekt
TextBox1.Text = .List(.ListIndex, 1)
For i = 0 To .ListCount - 1
MsgBox i
Next
LbLaden
End With
End Sub

Private Sub UserForm_Initialize()
LbLaden
End Sub

damit bist du alle Probleme los.
Kleiner Hinweis am Rande:
.AddItem ist die lahmste Methode zum Laden.

Gruß Uwe

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige