Anzeige
Archiv - Navigation
1500to1504
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

Listindex Userform

Listindex Userform
05.07.2016 13:03:15
Reinhardt
Hallo,
ich möchte gerne in Zelle A1 die Zeile /Zeilennummer /Index der in einer Userform angewählten Eintrag haben, also nicht den Begriff sondern eine Zahl.
Wie heißt hierfür der Befehl?
Vielen Dank im voraus
'

Private Sub UserForm_Initialize()
Sheets("Reinigungsplan").Select
'Alte Auswahl löschen
Application.CutCopyMode = False
Range("AC4").Select
Selection.ClearContents
With ListBox1
.ColumnCount = 4
.ColumnWidths = "3cm;3cm;3cm;3cm"
.ColumnHeads = False 'True
ListBox1.RowSource = "Reinigungsplan!R7:U26"
ListBox1.ControlSource = "Reinigungsplan!AD15:AD15"
End With
'End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Listindex Userform
05.07.2016 13:13:26
Daniel
HI
verwende noch den Befehl:
Listbox1.BoundColumn = 0
dann wird in die Zelle die bei ControlSource angegeben ist, der Index des ausgewählten Eintrags geschrieben.
Die Indexzählung beginnt aber bei 0 und nicht bei 1 (dh erster Eintrag ausgewählt: Listindex = 0)
solange noch nichts ausgewählt ist, ist der Listindex -1
btw. wenn du schon die WITH-Klammer mit der Listbox1 als objekt verwendest, warum schreibst du dann trotzdem noch
    With ListBox1
.ColumnCount = 4
.ColumnWidths = "3cm;3cm;3cm;3cm"
.ColumnHeads = False 'True
ListBox1.RowSource = "Reinigungsplan!R7:U26"
ListBox1.ControlSource = "Reinigungsplan!AD15:AD15"
End With

warum setzt du die WITH-Klammer nicht konsequent ein, dafür hast du sie doch erstellt:
    With ListBox1
.ColumnCount = 4
.ColumnWidths = "3cm;3cm;3cm;3cm"
.ColumnHeads = False 'True
.RowSource = "Reinigungsplan!R7:U26"
.ControlSource = "Reinigungsplan!AD15:AD15"
End With
btw. diese Einstellungen kannst du auch direkt in der Eigenschaftsliste der Listbox im VBA-Editor vornehmen und dir den Code dafür sparen.
beim starten der Userform haben Objekte immer die Eigenschaften, die du in der Eigenschaftsliste vorgibst.
Das setzen der Eigenschaften per Code ist nur erforderlich, wenn die Eigenschaften beim Start berechnet werden müssen.
Sind die Eigenschaften immer gleich, ist es einfacher, diese in der Eigenschaftsliste fest vorzugeben.
Gruß Daniel

Anzeige
AW: Listindex Userform
05.07.2016 13:19:32
Werner
Hallo Reinhardt,
versuch mal
Sheets("Tabelle1").Range("A1") = ListBox1.ListIndex + 7 'Tabellenblatt anpassen
Der Code müsste dann ins Klick-Ereignis deiner ListBox.
Bin mir aber nicht sicher, ob es das ist.
Gruß Werner

AW: Listindex Userform
05.07.2016 13:19:57
fcs
Hallo Rheinhard,
hierfür kannst das Listbox-Change-Ereignis verwenden.
Gruß
Franz
'Zusätzliches Makro unter dem Code des Userforms
Privat Sub Listbox1_Change()
With Me.Listbox1
If .Listindex = -1 Then
Sheets("Reinigungsplan").Range("A1").ClearContents
else
Sheets("Reinigungsplan").Range("A1").Value = .Listindex + 7 'Zeile des gewählten  _
Eintrags
End If
End With
End Sub

Anzeige
Vielen Dank für die Hilfe! o.T.
05.07.2016 14:36:09
Reinhardt
.

AW: Gerne u. Danke für die Rückmeldung. o.w.T.
06.07.2016 09:59:03
Werner

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige