Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1756to1760
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

ListBox Eintrag verschieben, aber...

ListBox Eintrag verschieben, aber...
11.05.2020 21:59:16
Frank
Hallo,
ich habe zwei Buttons in meiner UserForm für das Verschieben von ListBox Einträge nach oben und nach unten.
Aber wie müssen diese abgeändert werden, damit die Markierung immer auf dem ausgewählten Eintrag stehen bleibt (aktuell verschwindet die Markierung nach dem verschieben)?
Zudem sollen die ersten zwei Zeilen der ListBox nicht verschoben werden dürfen, Ideen?
Hier die Codes:
Private Sub CommandButton2_Click()
'Zeile ändern
Sheets("Notizen").Select
If ListBox1.ListIndex = -1 Or _
ListBox1.ListIndex = 0 Or _
ListBox1.ListIndex = 1 Then
Exit Sub
End If
If TextBox1.Text = "" Then
Exit Sub
End If
Dim Zeile
Zeile = Notizen.ListBox1.ListIndex + 1
Sheets("Notizen").Range("A" & Zeile) = TextBox1
ListBox1.RowSource = "Notizen!A1:A" & Sheets("Notizen").Range("A1").End(xlDown).Row
End Sub

Private Sub CommandButton3_Click()
'Zeile nach oben verschieben
Dim sRS As String
With ListBox1
sRS = .RowSource
If .ListIndex > 0 Then
With Range(.RowSource)
With .Cells(ListBox1.ListIndex + 1)
.Cut
.Offset(-1).Insert Shift:=xlDown
End With
End With
End If
.RowSource = ""
.RowSource = sRS
Repaint
End With
End Sub

Vielen Dank für eure Anregungen!
Gruß Yansop.

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: ListBox Eintrag verschieben, aber...
11.05.2020 22:06:43
Frank
Uuups, das wren die falschen zwei Codes, hier nun die richtigen...
Private Sub CommandButton3_Click()
'Zeile nach oben verschieben
Dim sRS As String
With ListBox1
sRS = .RowSource
If .ListIndex > 0 Then
With Range(.RowSource)
With .Cells(ListBox1.ListIndex + 1)
.Cut
.Offset(-1).Insert Shift:=xlDown
End With
End With
End If
.RowSource = ""
.RowSource = sRS
Repaint
End With
End Sub

Private Sub CommandButton4_Click()
'Zeile nach unten verschieben
Dim sRS As String
With ListBox1
sRS = .RowSource
If .ListIndex  -1 And .ListIndex 

Anzeige
AW: ListBox Eintrag verschieben, aber...
12.05.2020 11:28:54
Frank
Hallo,
das die ersten zwei Zeilen nicht verschoben dürfen konnte ich bereits lösen.
Aber das die Markierung der ListBox auf der Auswahlzeile bestehen bleibt konnte ich noch nicht lösen.
Habe es schon mit ListBox1.Index versucht...
Wäre klasse wenn mir hier jemand auf die Sprünge helfen könnte.
Vielen Dank, Gruß Frank.
AW: ListBox Eintrag verschieben, aber...
13.05.2020 16:32:00
Mullit
Hallo,
bau das mal ein, ist zwar LuftCode, aber könnte passen:
'// Zu Anfang das hier:>>>
Dim strText As String
Dim lngIndex As Long
strText = ListBox1.List(pvargIndex:=ListBox1.ListIndex)
'// ...Hier Dein Verschiebevorgang, ...dann am Schluß...>>>
For lngIndex = 0 To ListBox1.ListCount - 1
If ListBox1.List(pvargIndex:=lngIndex) = strText Then _
ListBox1.ListIndex = lngIndex: Exit For
Next

Gruß, Mullit
Anzeige
AW: ListBox Eintrag verschieben, aber...
15.05.2020 01:56:45
Frank
Danke für deine Mühe, funktioniert bestens!
Gruß Frank.
AW: ListBox Eintrag verschieben, aber...
13.05.2020 16:40:51
Daniel
Hi
merke dir den Listindex in einer Variablen und setze ihn am Ende wieder:
AktiveZeile = Listbox1.ListIndex
hier der Code zum Verschieben
Listbox1.ListIndex = AktiveZeile
Gruß Daniel

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige