Hallo Atilla, anhängend die fertige Datei (Januar bis Dezember und zusammen).
Der Cursor ist von Januar bis Dezember auf Feld „D12“ und bei „zusammen“ auf Feld „I10“ gestellt. Das ist soweit OK.
Nur die gelben Felder mit rotem Rand sind oder sollen ungeschützte Eingabefelder sein. Alle anderen Felder sind oder sollen geschützt sein.
Bei der Eingabe der geleisteten Arbeitsstunden in den gelben Feldern mit rotem Rand sollte der Cursor mit der Tabulatortaste von Feld „D12“ ausgehend in der Reihe 12 durchlaufen und weiter in der Reihe 16 bis zum Feld “R16“ und dann wieder in Feld „D12“ in Reihe 12 springen. In der anhängenden Datei springt der Cursor von Feld „R16“ weiter in Feld „C20“ und so weiter anstatt in Feld „D12“.
Die übrigen Eingabefelder im Januar und im Blatt „zusammen“ werden mit der Maus angesteuert.
09.05.2017, 01:20 (Dieser Beitrag wurde zuletzt bearbeitet: 09.05.2017, 01:30 von atilla.)
Hallo Jochem,
für Tabelle zusammen reicht es, wenn alle außer den zu beschreibenden Zellen gesperrt und das Blatt geschützt wird.
für die Monatstabellen, folgenden Code zusätzlich ins Codefenster von DieseArbeitsmappe einfügen:
Code:
Private Sub Workbook_SheetChange(ByVal Sh As Object, ByVal Target As Range) Dim monatsBereich, x monatsBereich = Array("C7", "I7", "O7", "C10", "D12", "E12", "F12", "G12", "H12", "I12", "J12", "K12", "L12", "M12", "N12", "O12", "P12", "Q12", "R12", "C16", "D16", "E16", "F16", "G16", "H16", "I16", "J16", "K16", "L16", "M16", "N16", "O16", "P16", "Q16", "R16", "C20", "G20", "K20", "C25", "C26", "C27", "C28")
If ActiveSheet.Name = "zusammen" Then
Else x = Application.Match(Target.Address(0, 0), monatsBereich, 0) If IsNumeric(x) Then If x <= UBound(monatsBereich) Then Range(monatsBereich(x)).Select Else Range(monatsBereich(0)).Select End If End If End If
End Sub
Nach Zelländerung in den gelisteten Zellen und Abschluss der Eingabe (Tab oder Enter oder raus mit der Maus) wird die nächste Zelle in der gelisteten Reihenfolge ausgewählt. Also kann Dein Rundlauf starten.
Hallo Atilla, anhängend die „Datei C“ in der ich den Code eingegeben habe. Wenn ich die Datei geschlossen und anschließend wieder geöffnet habe, springt der Cursor unverändert von „R16“ nach „C20“ anstatt wie gewünscht nach „D12“.
Der einfachhalber bitte ich Dich, es so einzurichten, dass der Cursor der Reihe nach alle ungeschützten Felder anspringt. Ich sende Dir die Datei unter „Datei D“ wo Du es so einrichten und sie mir fertig übergeben kannst. Beachte aber bitte, dass es dann auch klappt, wenn die Datei geschlossen und anschließend wieder geöffnet ist.
Für Deine Mühe bedanke ich mich im Voraus. Gruß Jochem
(10.05.2017, 22:39)atilla schrieb: Was der nicht kann und ich auch nicht programmieren kann, ist, die Tab Taste oder eine andere Taste abzufragen und darauf zu reagieren.