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

zeile mit bestimmten datum einblenden

Forumthread: zeile mit bestimmten datum einblenden

zeile mit bestimmten datum einblenden
10.09.2003 07:00:35
Jürgen
hallo,

ich komme bei folgendem problem nicht weiter:

ich habe vor in einer bestehenden tabelle ( fenster fixiert ) als erstes immer die zeile zu sehen mit dem heutigen datum.
die anderen sollen allerdings nicht ausgeblendert werden sondern nur in der fixierung verschwinden.
ich hoffe ich habe mich verständlich ausgedrückt.

habe es sch mal mit nem hyperlink versucht, allerdings recht erfolglos.

danke und gruß

jürgen
Anzeige

11
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zeile mit bestimmten datum einblenden
10.09.2003 07:32:10
Erich M.
Hallo Jürgen,

so wird das aktuelle Datum gefunden; in Tabellenmodul:


Private Sub Worksheet_Activate()
Dim rng As Range
Dim dat As Date, dat2 As Date, dat3 As Date
Dim var As Variant
Dim i As Byte
On Error GoTo errorhandler
dat = Date 'InputBox("Bitte Datum eingeben: ", "Datum?", Date)
var = Application.Match(CDbl(dat), Columns(1), 0)
If IsError(var) = False Then
Cells(var, 1).Select
Else
Beep
MsgBox prompt:="Datum wurde nicht gefunden!"
End If
errorhandler:
End Sub


Mit fixieren habe ich es nicht probiert.

mfg
Erich
Anzeige
AW: zeile mit bestimmten datum einblenden
10.09.2003 07:46:11
WernerB.
Hallo Jürgen,

bei dem nachstehenden Makro bin ich mangels Informationen davon ausgegangen, dass das Tagesdatum immer irgendwo in der Spalte "A" steht; sollte dies nicht der Fall sein, müsste das Makro natürlich entsprechend angepasst werden.

Das Makro gehört in das entsprechende Tabellenblatt-Modul (also nicht in ein normales Standard-Modul).

In das Tabellenblatt-Modul gelangst Du wie folgt:
- Rechtsklick auf den Tabellenblatt-Namen (Reiter/Lasche)
- Code anzeigen
- Das nachstehende Makro in die große weiße Fläche auf der rechten Seite kopieren.
- Mit Alt + Q zurück zu Excel
- Fertig

Das Makro wirkt selbsttätig. Immer wenn auf dieses Tabellenblatt gewechselt wird, wird das Makro gestartet.

Option Explicit

Private Sub Worksheet_Activate()
Dim c As Range
Dim laR As Long
Application.ScreenUpdating = False
laR = Cells(Rows.Count, 1).End(xlUp).Row
For Each c In Range("A1:A" & laR)
If c.Value = Date Then
Application.Goto Reference:=c, Scroll:=True
End If
Next c
Application.ScreenUpdating = True
End Sub

Viel Erfolg wünscht
WernerB.

P.S.: Das Forum lebt auch von den Rückmeldungen der Fragesteller an die Antworter (siehe Forums-FAQ).
Anzeige
AW: zeile mit bestimmten datum einblenden
10.09.2003 08:23:05
Jürgen
hallo,

ich bekomme nach der änderung der zeile " In Range("D1:D" & laR) " eine fehlermeldung:
fehler beim kompilieren - END SUB erwartet -

wie kann ich das beheben?

siehe auch hier:Userbild

jürgen
Anzeige
AW: zeile mit bestimmten datum einblenden
10.09.2003 08:36:53
WernerB.
Hallo Jürgen,

Du musst das Makro vollständig kopieren, d.h. von "Option Explicit" bis "End Sub" (jeweils einschließlich).

Die erste Zeile, die bei Dir drinsteht ("Worksheet_SelectionChange ....") gehört nicht dazu; bitte löschen!

Außerdem: Wenn das Tagesdatum in Spalte "D" zu finden ist, muss die "1" hinter "Rows.Count" durch eine "4" ersetzt werden.

Gruß WernerB.
Anzeige
DANKE - hat funktioniert !!!! ( kein Text )
10.09.2003 08:45:56
Jürgen
----
AW: zeile mit bestimmten datum einblenden
10.09.2003 10:59:35
Jürgen
hi,

habe ein paar probleme bekommen als ich beide makros ( automatisches einblenden der zeile und ansteuern der zeile über klick )auf ein tabellenblatt bringen wollte.

den button habe ich über eine befehlschaltfläche erstellt, dann in den code eingefügt.
geht das so überhaupt ????

danke für die mühe....

jürgen
Anzeige
AW: zeile mit bestimmten datum einblenden
11.09.2003 07:42:28
WernerB.
Hallo Jürgen,

da Du zwischenzeitlich noch zwei andere Threads zu diesem Thema eröffnet hast, habe ich Deinen Beitrag vom 10.09.2003 (10:59:35) in diesem Thread erst jetzt entdeckt; er scheint sich ja auf Deinen dritten Thread zu beziehen.

Bei der Erstellung des Button-Makros würde ich wie folgt vorgehen:

- Ansicht / Symbolleisten / Steuerelement-Toolbox
- Aus dieser Toolbox heraus eine Befehlsschaltfläche erzeugen
- Rechtsklick auf die Befehlsschalfläche (Command-Button)
- "Code anzeigen" anklicken
- Es wird das Tabellenblatt-Modul geöffnet
- Darin ist bereits das "automatische" Makro enthalten
- Es wurden zwei neue Zeilen in das Modul eingefügt:

Private Sub CommandButton1_Click
End Sub

- Zwischen diese beiden Zeilen kopierst Du mein zweites Makro ohne die die erste und ohne die letzte Zeile (also von "Dim c ..." bis "Application.ScreenUpdating = True")
- Zurück zu Excel geht's mit Alt+Q
- Toolbox schließen
- Wenn Du jetzt den Button anklickst, sollte das Makro flutschen.

Gruß WernerB.
Anzeige
noch eine weitere frage ;-)))
10.09.2003 08:51:40
Jürgen
kann ich so etwas auch mit einem hyperlink erzeugen?

hab in der tabelle einen link gesetzt um an das tabellenende zu gelangen - kein problem.
nur kann ich um umgedrehten fall so etwas nicht machen da sich das datum und somit die zeile ja laufend ändert.

gibts auch hierfür eine möglichkeit.

jürgen
Anzeige
Hyperlink - noch offen!
10.09.2003 08:57:27
WernerB.
Hallo Jürgen,

mit Hyperlinks habe ich mich bisher noch nicht befasst, kann Dir hier also leider nicht weiterhelfen.

Gruß WernerB.
ok - trotzdem DANKE !!!! ( kein Text )
10.09.2003 09:01:44
Jürgen
.
AW: Hyperlink - noch offen!
10.09.2003 10:01:35
Jürgen
hallo,

aber ein makro zum selbstausführen ( button )wird es doch sicherlich geben ? oder?

gruß

Jürgen
Anzeige
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige

Infobox / Tutorial

Zeile mit Heutigem Datum in Excel Einblenden


Schritt-für-Schritt-Anleitung

Um in Excel die Zeile mit dem heutigen Datum automatisch einzublenden, kannst du ein VBA-Makro verwenden. Folge diesen Schritten:

  1. Öffne den VBA-Editor:

    • Drücke Alt + F11, um den VBA-Editor zu öffnen.
  2. Finde das Tabellenblatt-Modul:

    • Rechtsklicke auf den Namen des Tabellenblatts, in dem du das Makro verwenden möchtest.
    • Wähle „Code anzeigen“.
  3. Füge das Makro ein:

    • Kopiere den folgenden Code in das große weiße Feld:
      Private Sub Worksheet_Activate()
      Dim c As Range
      Dim laR As Long
      Application.ScreenUpdating = False
      laR = Cells(Rows.Count, 1).End(xlUp).Row
      For Each c In Range("A1:A" & laR)
         If c.Value = Date Then
             Application.Goto Reference:=c, Scroll:=True
         End If
      Next c
      Application.ScreenUpdating = True
      End Sub
  4. Schließe den VBA-Editor:

    • Drücke Alt + Q, um zurück zu Excel zu gelangen.
  5. Teste das Makro:

    • Wechsle zu dem Tabellenblatt, in dem das Makro gespeichert ist. Die Zeile mit dem aktuellen Datum sollte nun automatisch ausgewählt werden.

Häufige Fehler und Lösungen

  • Fehler beim Kompilieren - END SUB erwartet:

    • Stelle sicher, dass du den gesamten Code von Option Explicit bis End Sub kopiert hast. Entferne eventuell nicht benötigte Zeilen, die nicht zum Makro gehören.
  • Datum nicht gefunden:

    • Prüfe, ob das Datum in der richtigen Spalte vorhanden ist. Falls das Datum in einer anderen Spalte ist, ändere die Range("A1:A" & laR)-Zeile entsprechend.

Alternative Methoden

  • Hyperlinks: Du kannst auch Hyperlinks verwenden, um zu einer bestimmten Zeile zu navigieren. Allerdings ist es schwierig, dies dynamisch zu gestalten, da sich das Datum täglich ändert. Es ist ratsam, stattdessen ein Makro zu verwenden.

  • Formelbasierte Ansätze: Wenn du keine Makros verwenden möchtest, könntest du eine Formel verwenden, um das aktuelle Datum zu überprüfen und visuelle Hinweise zu geben, aber das Einblenden einer Zeile ist mit Formeln nicht möglich.


Praktische Beispiele

Beispiel für ein einfaches Makro: Wenn du die Zeile mit dem Datum in Spalte B anstatt A hast, kannst du den Code wie folgt anpassen:

Private Sub Worksheet_Activate()
    Dim c As Range
    Dim laR As Long
    Application.ScreenUpdating = False
    laR = Cells(Rows.Count, 2).End(xlUp).Row
    For Each c In Range("B1:B" & laR)
        If c.Value = Date Then
            Application.Goto Reference:=c, Scroll:=True
        End If
    Next c
    Application.ScreenUpdating = True
End Sub

Tipps für Profis

  • Makros automatisieren: Du kannst das Makro so einstellen, dass es bei jedem Öffnen der Excel-Datei automatisch ausgeführt wird. Platziere den Code im ThisWorkbook-Modul anstatt im Tabellenblatt-Modul.

  • Verwendung von Schaltflächen: Du kannst eine Schaltfläche auf deinem Arbeitsblatt erstellen, die das Makro bei einem Klick ausführt. Gehe dazu zu „Entwicklertools“ > „Einfügen“ und wähle eine Befehlsschaltfläche aus.


FAQ: Häufige Fragen

1. Kann ich das Makro auch auf mehrere Blätter anwenden? Ja, du musst den Code in jedes relevante Tabellenblatt-Modul kopieren.

2. Was kann ich tun, wenn das Datum nicht im gewünschten Format vorliegt? Stelle sicher, dass die Datumswerte in der Tabelle im gleichen Format wie das Datum in VBA gespeichert sind. Du kannst die Formatierung in Excel anpassen.

3. Ist das Makro in allen Excel-Versionen verfügbar? Die VBA-Funktionalität ist in Excel 2007 und späteren Versionen verfügbar. Stelle sicher, dass du die Makros in den Excel-Optionen aktiviert hast.

4. Kann ich das Datum auch manuell eingeben? Ja, du kannst den Code so anpassen, dass er ein Datum aus einem Eingabefeld verwendet, anstatt das aktuelle Datum zu verwenden.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige