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

Hinzufügen von Einträgen und Schleife mit Listbox

Hinzufügen von Einträgen und Schleife mit Listbox
03.05.2017 15:16:05
Einträgen
Hallo in die Runde und vorab vielen Dank für Vorschläge.
Ich versuche mich gerade an einer Listbox, welche alle Daten mit einem Sheet abgleicht.
Ich habe eine Userform, mit verschiedenen TextBoxen. Sobald ich auf einen Eintrag gehe, wird der Inhalt der Zeile in der Listbox in den Textboxen angezeigt und ich kann den Eintrag hierüber bearbeiten. Nun wäre es aber toll, wenn ich ohne eine Zeile in der Listbox auszuwählen neue Einträge hinzufügen kann. Also eine Art Add Button. Also eine Funktion, die nach Eingabe der Daten in die nächste Zeile der Listbox springt würde ausreichen.
Hier mal mein kompletter Code.
'Nachfolgender Sub fügt Haltestellen hinzu und schreibt die Daten in die Textfelder

Private Sub CmdHaltestellenInputManuellDaltenHinzufuegen_Click()
'Haltestellen.Worksheets("Tabelle1").Select
With Me.LiHaltestellenInputManuellListe
.ColumnCount = 8
.RowSource = Workbooks("Haltestellen.xlsx").Worksheets("Tabelle1").Range("A2:H30").Address(  _
_
_
True, True, xlA1, True) '.RowSource = "'[Haltestellen.xls]Tabelle1'!a1:h30"
.ColumnHeads = True
End With
Des Weiteren, habe ich in der Eingabemaske zu den TextBoxen noch 2 Checkboxen. Ich würde gerne _ _ _ das Feld je nach aktivierter TextBox mit verschiedenen Zahlen füllen. Dabei habe ich an eine Schleife gedacht. Aber dies funktioniert nicht, bekomme die ganze Zeit _ _ _ Laufzeitfehler 70. 'Nachfolgender Text macht die Liste bearbeitbar

Private Sub CmdHaltestellenInputManuellListeBearbeiten_Click()
With Range("Tabelle1!A2:H30")
Me.Tag = "1"
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 1).Value =  _
TxtHaltestellenInputManuellDatenNr1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 2).Value =  _
TxtHaltestellenInputManuellDatenName1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 3).Value =  _
TxtHaltestellenInputManuellDatenId1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 4).Value =  _
TxtHaltestellenInputManuellDatenLat1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 5).Value =  _
TxtHaltestellenInputManuellDatenLong1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 6).Value =  _
TxtHaltestellenInputManuellDatenHoehe1.Value
.Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 7).Value =  _
TxtHaltestellenInputManuellDatenKurs1.Value
Me.Tag = ""
End With
Me.Tag = "1"
If Range("Tabelle1!A2:H30").Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 8).Value = "1"  _
_
_
Then
ChHaltestellenInputManuellDatenEwE1.Value = True
ElseIf Range("Tabelle1!A2:H30").Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 8).Value =  _
_
_
"2" Then
ChHaltestellenInputManuellDatenEwW1.Value = True
ElseIf Range("Tabelle1!A2:H30").Cells(LiHaltestellenInputManuellListe.ListIndex + 1, 8).Value =  _
_
_
"0" Then
ChHaltestellenInputManuellDatenEwE1.Value = False
ChHaltestellenInputManuellDatenEwW1.Value = False
End If
Me.Tag = ""
End Sub

'Ab hier kann man in der Liste Einträge markieren, diese werden dann vom oberen Code bearbeitet pre>
Private Sub LiHaltestellenInputManuellListe_Click()
If Me.Tag = "1" Then Exit Sub
'klick = ListBox1.ListIndex
With LiHaltestellenInputManuellListe
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenNr1 = .List(.ListIndex, 0)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenName1 = .List(.ListIndex, 1)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenId1 = .List(.ListIndex, 2)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenLat1 = .List(.ListIndex, 3)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenLong1 = .List(.ListIndex, 4)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenHoehe1 = .List(.ListIndex, 5)
HaltestellenInputManuell.TxtHaltestellenInputManuellDatenKurs1 = .List(.ListIndex, 6)
End With
If HaltestellenInputManuell.ChHaltestellenInputManuellDatenEwE1 = True Then
LiHaltestellenInputManuellListe.List(LiHaltestellenInputManuellListe.ListIndex, 7) = _
_
"1"
ElseIf HaltestellenInputManuell.ChHaltestellenInputManuellDatenEwW1 = True Then
LiHaltestellenInputManuellListe.List(LiHaltestellenInputManuellListe.ListIndex, 7) = _
_
"2"
Else
LiHaltestellenInputManuellListe.List(LiHaltestellenInputManuellListe.ListIndex, 7) = _
_
"0"
End If
End Sub

Also funktioniert bis auf die Checkboxen ganz gut. Ich hoffe, das ist nicht zu viel auf einmal. Bedanke mich aber bei allen Vorschlägen jetzt schon.
Viele Grüße
Rüdi

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
ich hab zwar keine Idee, aber...
03.05.2017 18:28:30
Oberschlumpf
Hallo Rüdi
...hilfreich für die Antworter (und dich) könnte eine Bsp-Datei mit Bsp-Daten + deinem Code sein, die du per Upload (keine Grafik!) zur Verfügung stellst.
Ciao
Thorsten
AW: ich hab zwar keine Idee, aber...
03.05.2017 19:13:43
Rüdi
Hallo Thorsten,
zunächst vielen Dank für die schnelle Reaktion. Ich habe versucht mal das Problem aus dem Gesamtprojekt zu isolieren.
Wenn man das Formular HaltestellenInputManuell startet. Kann man über den Button "neue Tabelle" ein Excel File erstellen. Dieses File bietet dann über RowSource Verbindung zu der Listbox. Sobald man in die TextBoxen Inhalt eingibt und auf Bearbeiten klickt, bzw. in der Listbox einen Eintrag auswählt werden die Inhalte synchronisiert. Mein erstes Problem ist der Add Button, ich würde gerne Inhalt in die TextBoxen eingeben, danach Add drücken und der Eintrag sollte in der Listbox stehen. Danach gleich eine Zeile weiter springen. Mein zweites Problem sind die Checkboxen. Wenn die erste angeklickt ist sollte in End/Wendehaltestelle eine 1 bei der zweiten eine 2 und falls keine angekreuzt ist eine 0 in die Spalte. Vielen Dank im Voraus
https://www.herber.de/bbs/user/113289.xlsm
Rüdi
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige