Runtime Error Cells Select
18.03.2016 13:31:17
Martin
ich wollte heute auf die schnelle eine Datei zur Tätigkeitserfassung erstellen.
Die Datei soll so aufgebaut sein, dass das erste Blatt die Einträge aller Mitarbeiter umfasst. Auf diesem Blatt soll aber nicht gearbeitet, sondern nur ausgelesen werden. Für die Eintragung der Tätigkeiten gibt es x weitere Blätter, die jeweils nach der vierstelligen Personalnummer benannt sind. Um den Zeitaufwand der Aufschreibung zu minimieren, habe ich eine UserForm erstellt, die beim Öffnen der Datei aufgeht und die Personalnummer abfragt. Wurde diese eingegeben, so wird direkt das entsprechende Blatt geöffnet und die erste freie Zelle in der Spalte D selektiert. (A,B und C sind vorausgefüllt).
An sich tut die Funktion auch was sie soll, aber nur wenn die erste Tätigkeitszeile nicht leer ist. Wenn diese leer ist, erhalte ich den Laufzeitfehler 1004.
Könnt ihr mir bitte weiterhelfen. Habe die Datei angehängt. Probleme macht folgende Code _ Sequenz, speziell die Zeile Cells(Range("D4").End(xlDown).Row + 1, 4).Select
Private Sub SubmitID_btn_Click()
' Hilfsvariablen
Dim i As Integer
Dim bExists As Boolean
' Testen ob's ein Sheet mit dem Namen
' "Mein_Arbeits_Blatt" gibt und ...
For i = 1 To Sheets.Count
If Sheets(i).Name = UserID.Value Then
bExists = True: Exit For
End If
Next i
If bExists Then
' ... wenn ja: Anzeige auf dieses Blatt umschalten
Sheets(UserID.Value).Select
Cells(Range("D4").End(xlDown).Row + 1, 4).Select
Me.Hide
Else
' ... wenn nein: Fehlermeldung
Me.Hide
Sheets("Zusammenfassung").Select
MsgBox "Dieser Benutzer existiert nicht!"
End If
End Sub
https://www.herber.de/bbs/user/104451.xlsm
Anzeige