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

Eintragung der Daten von Userform 4 in die Tabelle

Eintragung der Daten von Userform 4 in die Tabelle
07.11.2014 12:17:43
Userform
Habe eine Userform erstellt in dieser soll ein Datum und zwei Texte eingegeben werden,
Also TB1 = Datum; TB2 = Text; TB3 = Text.
Offensichtlich scheint er, Neuen Datensatz und Speichern dann in der Tabelle den eintrag der TB1 nicht als Datum formatiert hat, denn ich greife in der Tabelle auf die entsprechende Spalte mit Sverweiß zu und er erkennt es nicht als Datumformat. Wo ist der Fehler?
Hier der Code:
'Neu Schaltfläche Ereignisroutine'

Private Sub CommandButton1_Click()
Dim lZeile As Date
'Wenn der Benutzer einen neuen Eintrag erzeugen möchte,
'erstellen wir einen neuen Eintrag in der ListBox und markieren
'diesen, damit der Benutzer die Daten eintragen kann
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die überschriftrn
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))  ""
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
'Nach Durchlauf dieser Schleife steht lZeile in der ersten leeren Zeile von Tabelle1
'Neuen Eintrag in die Tabelle1 schreiben, Spalte ID muss gefüllt sein, damit
'unsere Routinen die Zeile wiederfinden!
Sheets(2).Cells(lZeile, 1) = CStr(lZeile)
'Und neuen Eintrag in die UserForm eintragen
ListBox1.AddItem CStr(lZeile)
'Den neuen Eintrag markieren mit Hilfe des ListIndexes
ListBox1.ListIndex = ListBox1.ListCount - 1
'Durch das Click Ereignis der ListBox werden die Daten automatisch geladen
End Sub

'Löschen Schaltfläche Ereignisroutine

Private Sub CommandButton2_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Löschen benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, die ganze Zeile wird nun gelöscht
Sheets(2).Rows(CStr(lZeile & ":" & lZeile)).Delete
'Die ListBox muss nun neu geladen werden!
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

'Speichern Schaltfläche Ereignisroutine

Private Sub CommandButton3_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Wir müssen prüfen, ob die ID Spalte auch gefüllt ist!!
If Trim(CStr(TextBox1.Text)) = "" Then
'Meldung ausgeben
MsgBox "Sie müssen mindestens ein Datum eingeben!", vbCritical + vbOKOnly, "FEHLER!"
'Abbrechen der Speicherroutine
Exit Sub
End If
'Ausbauoption: Prüfen, ob die ID in Tabelle1 Spalte 1 schon vorhanden ist!
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 10 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, TextBoxen in die Zellen schreiben
Sheets(2).Cells(lZeile, 1).Value = Trim(CStr(TextBox1.Text))
Sheets(2).Cells(lZeile, 2).Value = TextBox2.Text
Sheets(2).Cells(lZeile, 3).Value = TextBox3.Text
'Die ListBox muss nun neu geladen werden
'allerdings nur, wenn sich der Name (ID) geändert hat
If ListBox1.Text  Trim(CStr(TextBox1.Text)) Then
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End If
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

Private Sub CommandButton4_Click()
ActiveWorkbook.Close
End Sub

Private Sub ListBox1_Click()
Dim lZeile As Long
'Wir löschen standardmäßig alle bisherigen TextBoxen-Inhalte
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'Nur wenn ein Eintrag selektiert/markiert ist
If ListBox1.ListIndex >= 0 Then
lZeile = 12
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr((Tabelle2.Cells(lZeile, 1).Value)))  ""
'Wenn wir den Namen aus der ListBox1 in der Tabelle1 Spalte 1
'gefunden haben, übertragen wir die anderen Spalteninhalte
'in die TextBoxen!
If ListBox1.Text = Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) Then
'TextBoxen füllen
TextBox1 = Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))
TextBox2 = Sheets(2).Cells(lZeile, 2).Value
TextBox3 = Sheets(2).Cells(lZeile, 3).Value
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End If
End Sub

Private Sub UserForm_Activate()
'Wenn die Eingabemaske angezeigt wird, markieren wir den ersten Namen
'jedoch nur, wenn auch Einträge in der Liste stehen
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End Sub

'Startroutine, wird ausgeführt bevor die Eingabemaske angezeigt wird

Private Sub UserForm_Initialize()
Dim lZeile As Long
'Alle TextBoxen leer machen
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'In dieser Routine laden wir alle vorhandenen
'Einträge in die ListBox1
ListBox1.Clear 'Zuerst einmal die Liste leeren
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))  ""
'Aktuelle Zeile in die ListBox eintragen
ListBox1.AddItem Trim(CStr(Sheets(2).Cells(lZeile, 1).Value))
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub
Und hier die Datei, der Code bezieht sich auf Userform 4, das Datum soll in Tabellenblatt 2 eingetragen werden
https://www.herber.de/bbs/user/93612.xlsm

12
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eintragung der Daten von Userform 4 in die Tabelle
07.11.2014 12:27:05
Userform
Hi,
hab mir nicht alles durchgelesen, sondern antwortet hierdrauf:
...den eintrag der TB1 nicht als Datum formatiert hat, denn ich greife in der Tabelle auf die entsprechende Spalte mit Sverweiß zu und er erkennt es nicht als Datumformat. Wo ist der Fehler?
Textboxen liefern eben TEXT und keine Zahl oder Datum.
Dazu gibt es die Umwandlungsfunktionen - in Deinem Fall CDate.
Also:
Range("A1") = CDate(TextBox1)
Dann kann der SVERWEIS auch was damit anfangen.
VG, Boris

AW: Eintragung der Daten von Userform 4 in die Tabelle
07.11.2014 12:37:26
Userform
Hallo, Danke für die Antwort, heißt dass, dass ich ListBox1.AddItem Trim(CStr(Sheets(2).Cells(lZeile, 1).Value)) in ListBox1.AddItem Trim(Cdate(Sheets(2).Cells(lZeile, 1).Value)) umändern soll?

frag nicht, probier es aus.......ohne - Gruß...
07.11.2014 12:40:26
robert

frag nicht, probier es aus.......ohne - Gruß...
07.11.2014 12:40:26
robert

AW: Eintragung der Daten von Userform 4 in die Tabelle
07.11.2014 12:41:53
Userform
ok, es hat eben geklappt, danke an Boris, robert und Rudi

AW: Eintragung der Daten von Userform 4 in die Tabelle
07.11.2014 12:46:59
Userform
Hallo,
nein, eher nicht.
In einer Listbox ist alles Text.
Für deinen SVerweis ist relevant, was in der Tabelle steht, d.h. wenn du ein Datum aus einer Text- oder Listbox in die Tabelle schreibst, musst du es per CDate in ein 'richtiges' Datum umwandeln.
Ich selbst gehe sogar so weit, dass ich in die Tabelle immer einen Long-Wert schreibe, da es sonst zu Tag-Monats-Drehern kommen kann (7.11.2014 wird zu 11.7.2014).
Zelle=clng(cdate(textbox)) oder Zelle=CDate(Textbox)*1
Gruß
Rudi

Anzeige
AW: Excel stürzt ab
07.11.2014 12:54:04
Langmantl
habe es in CDate geändert. Wenn ich dann den Code ausführe oder teste, stürzt mir Excel ab.
'Neu Schaltfläche Ereignisroutine'

Private Sub CommandButton1_Click()
Dim lZeile As Long
'Wenn der Benutzer einen neuen Eintrag erzeugen möchte,
'erstellen wir einen neuen Eintrag in der ListBox und markieren
'diesen, damit der Benutzer die Daten eintragen kann
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die überschriftrn
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))  ""
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
'Nach Durchlauf dieser Schleife steht lZeile in der ersten leeren Zeile von Tabelle1
'Neuen Eintrag in die Tabelle1 schreiben, Spalte ID muss gefüllt sein, damit
'unsere Routinen die Zeile wiederfinden!
Sheets(2).Cells(lZeile, 1) = CDate(lZeile)
'Und neuen Eintrag in die UserForm eintragen
ListBox1.AddItem CDate(lZeile)
'Den neuen Eintrag markieren mit Hilfe des ListIndexes
ListBox1.ListIndex = ListBox1.ListCount - 1
'Durch das Click Ereignis der ListBox werden die Daten automatisch geladen
End Sub

'Löschen Schaltfläche Ereignisroutine

Private Sub CommandButton2_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Löschen benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = Trim(CDate(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, die ganze Zeile wird nun gelöscht
Sheets(2).Rows(CDate(lZeile & ":" & lZeile)).Delete
'Die ListBox muss nun neu geladen werden!
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

'Speichern Schaltfläche Ereignisroutine

Private Sub CommandButton3_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Wir müssen prüfen, ob die ID Spalte auch gefüllt ist!!
If Trim(CDate(TextBox1.Text)) = "" Then
'Meldung ausgeben
MsgBox "Sie müssen mindestens ein Datum eingeben!", vbCritical + vbOKOnly, "FEHLER!"
'Abbrechen der Speicherroutine
Exit Sub
End If
'Ausbauoption: Prüfen, ob die ID in Tabelle1 Spalte 1 schon vorhanden ist!
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 10 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = Trim(CDate(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, TextBoxen in die Zellen schreiben
Sheets(2).Cells(lZeile, 1).Value = Trim(CDate(TextBox1.Text))
Sheets(2).Cells(lZeile, 2).Value = TextBox2.Text
Sheets(2).Cells(lZeile, 3).Value = TextBox3.Text
'Die ListBox muss nun neu geladen werden
'allerdings nur, wenn sich der Name (ID) geändert hat
If ListBox1.Text  Trim(CDate(TextBox1.Text)) Then
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End If
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

Private Sub CommandButton4_Click()
ActiveWorkbook.Close
End Sub

Private Sub ListBox1_Click()
Dim lZeile As Long
'Wir löschen standardmäßig alle bisherigen TextBoxen-Inhalte
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'Nur wenn ein Eintrag selektiert/markiert ist
If ListBox1.ListIndex >= 0 Then
lZeile = 12
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CDate((Tabelle2.Cells(lZeile, 1).Value)))  ""
'Wenn wir den Namen aus der ListBox1 in der Tabelle1 Spalte 1
'gefunden haben, übertragen wir die anderen Spalteninhalte
'in die TextBoxen!
If ListBox1.Text = Trim(CDate(Sheets(2).Cells(lZeile, 1).Value)) Then
'TextBoxen füllen
TextBox1 = Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))
TextBox2 = Sheets(2).Cells(lZeile, 2).Value
TextBox3 = Sheets(2).Cells(lZeile, 3).Value
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End If
End Sub

Private Sub UserForm_Activate()
'Wenn die Eingabemaske angezeigt wird, markieren wir den ersten Namen
'jedoch nur, wenn auch Einträge in der Liste stehen
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End Sub

'Startroutine, wird ausgeführt bevor die Eingabemaske angezeigt wird

Private Sub UserForm_Initialize()
Dim lZeile As Long
'Alle TextBoxen leer machen
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'In dieser Routine laden wir alle vorhandenen
'Einträge in die ListBox1
ListBox1.Clear 'Zuerst einmal die Liste leeren
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))  ""
'Aktuelle Zeile in die ListBox eintragen
ListBox1.AddItem Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub
https://www.herber.de/bbs/user/93615.xlsm

Anzeige
Ja, das mache/denke ich auch, Rudi! Gruß owT
07.11.2014 12:58:46
Luc:-?
:-?

AW: Excel stürzt ab
07.11.2014 13:20:17
Rudi
Hallo,
das solltest du genau umgekehrt machen:
Trim(CDate(Sheets(2).Cells(lZeile, 1).Value))
erst Leerzeichen entfernen und dann in ein Datum umwandeln.
CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))
Ob das allerdings die Absturzursache ist....
Gruß
Rudi

AW: Excel stürzt ab
10.11.2014 07:35:05
Langmantl
Hallo Rudi, habe deinen Rat befolgt und alles entsprechend geändert, wo ist der Fehler, er zeigt mir eine Laufzeitunverträglichkeit an.
'Neu Schaltfläche Ereignisroutine'

Private Sub CommandButton1_Click()
Dim lZeile As Long
'Wenn der Benutzer einen neuen Eintrag erzeugen möchte,
'erstellen wir einen neuen Eintrag in der ListBox und markieren
'diesen, damit der Benutzer die Daten eintragen kann
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die überschriftrn
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))  ""
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
'Nach Durchlauf dieser Schleife steht lZeile in der ersten leeren Zeile von Tabelle1
'Neuen Eintrag in die Tabelle1 schreiben, Spalte ID muss gefüllt sein, damit
'unsere Routinen die Zeile wiederfinden!
Sheets(2).Cells(lZeile, 1) = CDate(lZeile)
'Und neuen Eintrag in die UserForm eintragen
ListBox1.AddItem CDate(lZeile)
'Den neuen Eintrag markieren mit Hilfe des ListIndexes
ListBox1.ListIndex = ListBox1.ListCount - 1
'Durch das Click Ereignis der ListBox werden die Daten automatisch geladen
End Sub

'Löschen Schaltfläche Ereignisroutine

Private Sub CommandButton2_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Zum Löschen benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = CDate(Trim(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, die ganze Zeile wird nun gelöscht
Sheets(2).Rows(CDate(lZeile & ":" & lZeile)).Delete
'Die ListBox muss nun neu geladen werden!
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

'Speichern Schaltfläche Ereignisroutine

Private Sub CommandButton3_Click()
Dim lZeile As Long
'Wenn kein Datensatz in der ListBox markiert wurde, wird die Routine beendet
If ListBox1.ListIndex = -1 Then Exit Sub
'Wir müssen prüfen, ob die ID Spalte auch gefüllt ist!!
If CDate(Trim(TextBox1.Text)) = "" Then
'Meldung ausgeben
MsgBox "Sie müssen mindestens ein Datum eingeben!", vbCritical + vbOKOnly, "FEHLER!"
'Abbrechen der Speicherroutine
Exit Sub
End If
'Ausbauoption: Prüfen, ob die ID in Tabelle1 Spalte 1 schon vorhanden ist!
'Zum Speichern benötigen wir die Zeilennummer des ausgewählten Datensatzes
lZeile = 10 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))  ""
'Datensatz ID Spalte mit selektiertem Eintrag der ListBox vergleichen
If ListBox1.Text = CDate(Trim(Sheets(2).Cells(lZeile, 1).Value)) Then
'Eintrag gefunden, TextBoxen in die Zellen schreiben
Sheets(2).Cells(lZeile, 1).Value = CDate(Trim(TextBox1.Text))
Sheets(2).Cells(lZeile, 2).Value = TextBox2.Text
Sheets(2).Cells(lZeile, 3).Value = TextBox3.Text
'Die ListBox muss nun neu geladen werden
'allerdings nur, wenn sich der Name (ID) geändert hat
If ListBox1.Text  CDate(Trim(TextBox1.Text)) Then
Call UserForm_Initialize
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End If
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub

Private Sub CommandButton4_Click()
UserForm3.Show
End Sub

Private Sub ListBox1_Click()
Dim lZeile As Long
'Wir löschen standardmäßig alle bisherigen TextBoxen-Inhalte
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'Nur wenn ein Eintrag selektiert/markiert ist
If ListBox1.ListIndex >= 0 Then
lZeile = 12
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While CDate(Trim((Tabelle2.Cells(lZeile, 1).Value)))  ""
'Wenn wir den Namen aus der ListBox1 in der Tabelle1 Spalte 1
'gefunden haben, übertragen wir die anderen Spalteninhalte
'in die TextBoxen!
If ListBox1.Text = CDate(Trim(Sheets(2).Cells(lZeile, 1).Value)) Then
'TextBoxen füllen
TextBox1 = CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))
TextBox2 = Sheets(2).Cells(lZeile, 2).Value
TextBox3 = Sheets(2).Cells(lZeile, 3).Value
Exit Do 'Vorzeitiges Ende, da der Datensatz schon gefunden ist
End If
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End If
End Sub

Private Sub UserForm_Activate()
'Wenn die Eingabemaske angezeigt wird, markieren wir den ersten Namen
'jedoch nur, wenn auch Einträge in der Liste stehen
If ListBox1.ListCount > 0 Then ListBox1.ListIndex = 0
End Sub

'Startroutine, wird ausgeführt bevor die Eingabemaske angezeigt wird

Private Sub UserForm_Initialize()
Dim lZeile As Long
'Alle TextBoxen leer machen
TextBox1 = ""
TextBox2 = ""
TextBox3 = ""
'In dieser Routine laden wir alle vorhandenen
'Einträge in die ListBox1
ListBox1.Clear 'Zuerst einmal die Liste leeren
lZeile = 12 'Start in Zeile 2, Zeile 1 sind ja die Überschriften
'Schleife solange etwas in der ersten Spalte in Tabelle 1 drin steht
Do While CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))  ""
'Aktuelle Zeile in die ListBox eintragen
ListBox1.AddItem CDate(Trim(Sheets(2).Cells(lZeile, 1).Value))
lZeile = lZeile + 1 'Nächste Zeile bearbeiten
Loop
End Sub
https://www.herber.de/bbs/user/93644.xlsm

Anzeige
AW: Excel stürzt ab
13.11.2014 13:38:43
Langmantl
hat sich erledigt, danke

305 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige