380 Aufrufe
Gefragt in Tabellenkalkulation von
Hallo,

ich habe eine Tabelle erstellt in der verschiedene Personen unabhängig voneinander Eintragungen vornehmen müssen. in der Tabelle sind mehrere Arbeitsblätter vorhanden wobei jedes Arbeitsblatt ein anderer Tag ist. (der Name ist also ein Datum).
Ist es per VBA möglich das Excel beim Öffen der Tabelle automatisch das Arbeitsblatt mit dem heutigen (also aktuellen) Datum öffnet?

6 Antworten

0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo,

ja das ist möglich. Ich gehe davon aus, dass die Arbeitsblätter "07.08.2017" etc. heißen.

Kopiere das folgende Makro in das VBA-Projekt der betreffenden Arbeitsmappe:
Private Sub Workbook_Open()
Dim strName As String

strName = Date

Worksheets(strName).Activate

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo,

noch mal ich ;-). Hier das erweiterte Makro mit Prüfung, ob ein entsprechendes Tabellenblatt überhaupt existiert:

Private Sub Workbook_Open()
Dim strName As String
Dim ws As Worksheet
Dim bExists As Boolean

'aktuelles Datum = Name des Arbeitsblatts
strName = Date
' Alle vorhandenen Arbeitsblätter durchlaufen
For Each ws In Worksheets
If ws.Name = strName Then
bExists = True
Exit For
End If
Next

If bExist = True Then
'Arbeitsblatt aktivieren
Worksheets(strName).Activate
Else
'fehlermeldung
MsgBox "Das Arbeitsblatt mit dem Name " & strName & " existiert nicht!", 16, "Fehler"
End If

End Sub


Gruß

M.O.
0 Punkte
Beantwortet von
Danke M.O. für die schnelle Antwort,

ja, die einzelnen Arbeitsblätter sind dd.mm.jjjj bezeichnet, habe den Code (mit Prüfung)verwendet aber Excel meckert das ein Arbeitsblatt mit dem Namen 07.08.2017 nicht existiert, es ist aber definitiv da

woran könnte das liegen?
0 Punkte
Beantwortet von
Nachtrag: mit dem Code ohne Prüfung funktioniert es
0 Punkte
Beantwortet von m-o Profi (22.7k Punkte)
Hallo,

ja da ist ein kleiner Fehler drin :-(. Bei der Anweisung
If bExist = True Then

fehlt ein s. Ersetze die Zeile durch
If bExists = True Then

dann sollte es klappen.

Gruß

M.O.
0 Punkte
Beantwortet von
super, jetzt klappt es

Vielen Dank für deine Hilfe
...