Also Ich habe eine Excel Datei mit der man Mitarbeiter einspeichern kann. Man trägt die Daten in eine Userform1 ein und die Daten werden in eine Tabelle1 automatisch gespeichert.
Um die Daten wieder zu finden habe ich eine Suchfunktion in welcher man zuerst den Namen oder die Personalnummer eines Mitarbeiters angeben kann. Das Programm sucht dann alle Vorhandenen Datensätze zu der Person heraus und listet die Datums in einer Kombobox auf. Anschließend Wählt man das gewünschte Datum aus und klickt auf laden woraufhin das Programm mit .find das Datum sucht und anschließend überprüft ob es mit dem gesuchten Namen übereinstimmt anschließend werden alle Daten in eine Userform geladen wo an die Daten betrachten/ändern und neu abspeichern kann.
Alles hat wunderbar funktioniert aber seit gestern findet er zwar die Datums zu den Personen und läd sie in die Kombobox aber wenn man jetzt auf laden klickt findet er das Datum nur manchmal, Mal funktioniert es mal nicht sogar wenn es die gleiche Person ist findet er nur bestimmte Daten obwohl er sie vorher in die box geladen hat und die Daten existieren.
Ich hoffe ich konnte die Sache einigermaßen gut erklären. :20:
hier einmal der betreffende Code befindet sich in der Userform "Suche" der rote Bereich ist der meiner Meinung nach relevante.
Um die Daten wieder zu finden habe ich eine Suchfunktion in welcher man zuerst den Namen oder die Personalnummer eines Mitarbeiters angeben kann. Das Programm sucht dann alle Vorhandenen Datensätze zu der Person heraus und listet die Datums in einer Kombobox auf. Anschließend Wählt man das gewünschte Datum aus und klickt auf laden woraufhin das Programm mit .find das Datum sucht und anschließend überprüft ob es mit dem gesuchten Namen übereinstimmt anschließend werden alle Daten in eine Userform geladen wo an die Daten betrachten/ändern und neu abspeichern kann.
Alles hat wunderbar funktioniert aber seit gestern findet er zwar die Datums zu den Personen und läd sie in die Kombobox aber wenn man jetzt auf laden klickt findet er das Datum nur manchmal, Mal funktioniert es mal nicht sogar wenn es die gleiche Person ist findet er nur bestimmte Daten obwohl er sie vorher in die box geladen hat und die Daten existieren.
Ich hoffe ich konnte die Sache einigermaßen gut erklären. :20:
hier einmal der betreffende Code befindet sich in der Userform "Suche" der rote Bereich ist der meiner Meinung nach relevante.
- Private Sub CommandButton_laden_Click()
- Dim eingabe As Range 'nach name oder personalnummer suchen
- Dim finden As Range 'durchsucht die spalte nach dem suchbegriff
- Dim treffer As String 'speichert den ersten gefundenen wert und wird als abbruch bedingung gebraucht da sonst die tabbelle immer wieder von vorne durchgesucht wird so stoppt die suche wenn sie wieder bei der addresse ist
- Dim suchfeld As String 'speichert den aktuell gefundenen wert
- Dim w As Integer 'wenn man nach name sucht muss w = -1 gesetzt werden weil sonst alles um eine spalte verrutsch
- w = 0
- Tabelle1.Activate ' hier liegen die "Rohdaten"
- Dim datumeingabe As Date
- datumeingabe = Suche.ComboBox_Date.Value 'hier wurde das Datum reingeladen und ausgewählt
- Set finden = Tabelle1.Columns(108).Find(what:=datumeingabe, LookAt:=xlPart)
blau markiert weil die stelle eigentlich keine Rolle spielt da die werte erst nach dem finden verwendet werden - If IsNumeric(Suche.TextBox_s.Value) = True Then 'das brauche ich um zu wissen mit welcher spalte die TextBox_s.value verglichen werden soll
- w = -1
- End If
- If Not finden Is Nothing Then 'hier bricht er dann ab weil finden manchmal fälschlicher weise nothing ist
