ich habe ein Tabellenblatt 'Gesamt' in den Zellen B9-B20 steht jeweils Januar - Dezember.
Dann habe ich Tabellenblätter mit den Monatsnamen in diesen werden in jede Zeile, je nach Monat, täglich Daten eingetragen immer beginnend in A3, A4, A5 usw.
Ich möchte nun, im Blatt 'Gesamt' die Monatsnamen mittels Hyperlink mit den jeweiligen Monatsblätter "verbinden" wobei immer geprüft werden soll ob in A3, A4 usw. etwas in der Zelle steht - wenn ja - soll automatisch die nächste freie Zeile bzw. Zelle markiert werden.
Beispiel: Im Tabellenblatt 'Januar' stehen in A3 und A4 bereits Daten - klicke ich nun im Tabellenblatt 'Gesamt' auf den Namen Januar sollte automatisch die Zelle A5 markiert sein.
In den Monatsblättern habe ich schon folgenden Code:
Option Explicit
Private Sub Worksheet_BeforeDoubleClick(ByVal Target As Range, Cancel As Boolean)
' erstellt 20.01.2005
' im Bereich H bis J nur ein mal ein X, "X" wird durch Doppelklick in der Zelle erzeugt
If Target.Column >= 8 And Target.Column <= 10 Then
'ActiveSheet.Unprotect
Cancel = True
If WorksheetFunction.CountIf(Range(Cells(Target.Row, 8), Cells(Target.Row, 10)), "X") = 0 Then
Target = "X"
Else
Range(Cells(Target.Row, 8), Cells(Target.Row, 10)).Value = ""
Target = "X"
End If
'ActiveSheet.Protect
' erstellt 11.07.2004
' im Bereich N bis O nur ein mal X, "X" wird durch Doppelklick in der Zelle erzeugt
ElseIf Target.Column >= 14 And Target.Column <= 15 And Target.Row >= 3 Then
'ActiveSheet.Unprotect
Cancel = True
If WorksheetFunction.CountIf(Range(Cells(Target.Row, 14), Cells(Target.Row, 15)), "X") = 0 Then
Target = "X"
Else
Range(Cells(Target.Row, 14), Cells(Target.Row, 15)) = ""
Target = "X"
End If
'ActiveSheet.Protect
End If
End Sub
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'Wenn in Spalte H, I oder J ein "X" per Doppelklick eingetragen ist erscheint
'in Spalte "K" automatisch das aktuelle Datum!
If Target.Column >= 8 And Target.Column <= 10 Then Cells(Target.Row, 11) = Date
'Wenn in Spalte N oder O ein "X" per Doppelklick eingetragen ist erscheint
'in Spalte "P" automatisch das aktuelle Datum!
If Target.Column >= 14 And Target.Column <= 15 Then Cells(Target.Row, 16) = Date
'End If
End Sub
'
Private Sub Worksheet_Change(ByVal Target As Excel.Range)
'If Range("L:L") = Fällig Then
'Farbe = ThisWorkbook.Worksheets("- 01 -").Range("L:L").Interior.ColorIndex
'If ET = "" Then ersteFarbe
'Else
'Ende
'End If
'End Sub
Ich hoffe, ich hab mich klar ausgedrückt, da ich in VBA noch absolut unerfahren bin.
Beste Grüße aus Berlin
Jean-Pierre