Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Zum Aktuellen Datum springen

Zum Aktuellen Datum springen
24.11.2005 09:31:02
kalle
Hallo
brauche eine Formel für folgendes.
Ich brauch eine Formel die beim öffnen der Excel Datei zu einer bestimmten folie springt und dort bis zum aktuellen datum geht. Es soll dann egal sein wo man speichert(egal auf welcher folie) jedesmal wenn die datei neu geöffnet wird sol er zur bestimmten folie springen und zum aktuellen Datum.
Habe auch schon folgendes gefunden.

Private Sub Workbook_Open()
Dim Suchbegriff As Range
Set Suchbegriff = Range("'5'!$A$1:$A$370").Find(What:=Date, LookAt:=xlWhole)
If Suchbegriff Is Nothing = False Then _
Range(Suchbegriff.Address).Activate
End Sub

Bloß wenn ich auf einer anderen Folie abspeicher, dann ließt er das aktuelle Datum von der Folie mit dem Datum aus und springt auf der aktuellen nur in diese Zeile.
Keine ahnung wie ich des oben modifizieren soll ?
Außerdem hätte ich noch eine Frage.(Für ein anderes Worksheet)
Kann man einen Speichern - Button erstellen bei dem immer zuerst ins heuptmenü gegangen wird und dann dort abspeichert..
Kann mir bitte jemand helfen.
Gruß
Kalle
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Zum Aktuellen Datum springen
24.11.2005 09:57:39
Rocky
Hallo,

Private Sub Workbook_Open()
Dim TabName as string
Dim Suchbegriff As Range
TabName= " Name der Tabelle "
Set Suchbegriff = Sheets(TabName).Range("'5'!$A$1:$A$370").Find(What:=Date,   LookAt:=xlWhole)
If Suchbegriff Is Nothing = False Then _
Range(Suchbegriff.Address).Activate
End Sub

Das müsste eigentlich Klappen
Gruß Rocky
Anzeige
AW: Zum Aktuellen Datum springen
24.11.2005 10:15:13
Kalle
Vielen Dank erst mal,
leider funktioniert es nicht. Noch jemand ne idee ?
gruß
kalle
AW: Zum Aktuellen Datum springen
24.11.2005 10:25:51
Rocky
Lad doch mal ne abgespeckte Variante hoch in der man nen bischen ausprobieren kann.
und mach die zelle Farbig in der du d landen willst.
gruß Rocky
AW: Zum Aktuellen Datum springen
24.11.2005 10:27:33
UweD
Hallo
die '5' im Range legt schon das Tabellenblatt fest (Name der Tabelle =5)
so klappt es

Private Sub Workbook_Open()
Dim Tabname
Dim Suchbegriff As Range
Set Tabname = Sheets("Tabelle2")
Set Suchbegriff = Tabname.Range("$A$1:$A$370").Find(What:=Date, LookAt:=xlWhole)
If Suchbegriff Is Nothing = False Then
Tabname.Activate
Tabname.Range(Suchbegriff.Address).Select
End If
End Sub

Gruß UweD
(Rückmeldung wäre toll)
Anzeige
AW: Zum Aktuellen Datum springen
24.11.2005 10:39:53
Kalle
Vielen Dank Hat geklappt
AW: Zum Aktuellen Datum springen
24.11.2005 10:33:59
Alexander
Also ich bin zwar kein Find-Experte, aber ich würde das Makro so ändern:

Private Sub Workbook_Open()
Dim Suchbegriff As Range
Dim s As Worksheet
Set s = ThisWorkbook.WorkSheets("Name")
Set Suchbegriff = s.Cells.Find(What:=Date, LookAt:=xlWhole)
If Not Suchbegriff Is Nothing Then Range(Suchbegriff.Address).Select
End Sub

Anzeige
AW: Zum Aktuellen Datum springen
24.11.2005 10:36:05
Alexander
Zu deiner anderen Frage:
Du kannst den BevoreSave Event nutzen um beliebige Operationen vor dem Speichern durchzuführen!
Gruß, Alexander.
AW: Zum Aktuellen Datum springen
24.11.2005 10:40:34
kalle
Vielen Dank Hat geklappt
AW: Zum Aktuellen Datum springen
24.11.2005 10:35:35
UweD
Hallo
die '5' im Range legt schon das Tabellenblatt fest (Name der Tabelle =5)
so klappt es

Private Sub Workbook_Open()
Dim Tabname
Dim Suchbegriff As Range
Set Tabname = Sheets("Tabelle2")
Set Suchbegriff = Tabname.Range("$A$1:$A$370").Find(What:=Date, LookAt:=xlWhole)
If Suchbegriff Is Nothing = False Then
Tabname.Activate
Tabname.Range(Suchbegriff.Address).Select
End If
End Sub

Gruß UweD
(Rückmeldung wäre toll)
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Auf das aktuelle Datum in Excel springen


Schritt-für-Schritt-Anleitung

  1. Öffne die Excel-Datei, in der du das Verhalten einstellen möchtest.

  2. Drücke ALT + F11, um den VBA-Editor zu öffnen.

  3. Suche im Projekt-Explorer auf der linken Seite nach "DieseArbeitsmappe" und doppelklicke darauf.

  4. Füge den folgenden VBA-Code in das Fenster ein:

    Private Sub Workbook_Open()
       Dim Tabname As Worksheet
       Dim Suchbegriff As Range
       Set Tabname = Sheets("Name der Tabelle") ' Ersetze "Name der Tabelle" durch den tatsächlichen Tabellennamen
       Set Suchbegriff = Tabname.Range("$A$1:$A$370").Find(What:=Date, LookAt:=xlWhole)
    
       If Not Suchbegriff Is Nothing Then
           Tabname.Activate
           Tabname.Range(Suchbegriff.Address).Select
       End If
    End Sub
  5. Schließe den VBA-Editor und speichere die Datei als Makro-fähige Arbeitsmappe (.xlsm).

  6. Schließe die Excel-Datei und öffne sie erneut. Die Datei sollte nun beim Öffnen auf das aktuelle Datum springen.


Häufige Fehler und Lösungen

  • Problem: Das Makro springt nicht zur richtigen Zelle.

    • Lösung: Stelle sicher, dass der Tabellennamen im Code korrekt angegeben ist. Wenn der Name der Tabelle nicht stimmt, kann das Makro nicht darauf zugreifen.
  • Problem: Du erhältst eine Fehlermeldung beim Öffnen der Datei.

    • Lösung: Überprüfe, ob der VBA-Code korrekt eingegeben wurde und dass die Datei im richtigen Format (.xlsm) gespeichert ist.

Alternative Methoden

Wenn du nicht mit VBA arbeiten möchtest, kannst du auch die =HEUTE()-Funktion verwenden, um das aktuelle Datum in einer Zelle anzuzeigen. Dies hilft jedoch nicht dabei, direkt zu einer bestimmten Folie zu springen. Eine andere Möglichkeit ist, ein Hyperlink zu setzen, der auf eine Zelle mit dem aktuellen Datum verweist, aber auch hier ist die VBA-Lösung effektiver.


Praktische Beispiele

Hier ist ein Beispiel, wie der VBA-Code in einer realen Excel-Anwendung aussehen könnte:

Private Sub Workbook_Open()
    Dim Tabname As Worksheet
    Dim Suchbegriff As Range
    Set Tabname = Sheets("Tabelle2") ' Beispiel-Tabellenname
    Set Suchbegriff = Tabname.Range("$A$1:$A$370").Find(What:=Date, LookAt:=xlWhole)

    If Not Suchbegriff Is Nothing Then
        Tabname.Activate
        Tabname.Range(Suchbegriff.Address).Select
    End If
End Sub

Dieser Code aktiviert die Tabelle "Tabelle2" und sucht nach dem aktuellen Datum in den Zellen A1 bis A370.


Tipps für Profis

  • Nutze die Workbook_BeforeClose-Ereignisprozedur, um vor dem Schließen der Datei zu speichern.
  • Verwende die Application.OnTime-Methode für zeitgesteuerte Aufgaben innerhalb deiner Excel-Arbeitsmappe.
  • Experimentiere mit dem Find-Objekt, um spezifischere Suchkriterien zu verwenden, z. B. für bestimmte Datenformate.

FAQ: Häufige Fragen

1. Kann ich den Code anpassen, um auf andere Zellen zu springen? Ja, du kannst die Range-Anweisung im Code ändern, um auf andere Zellen oder Bereiche zu verweisen.

2. Funktioniert dieser Code in allen Excel-Versionen? Der VBA-Code sollte in den meisten modernen Excel-Versionen (Excel 2007 und später) funktionieren, solange die Makros aktiviert sind.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige