Anzeige
Archiv - Navigation
988to992
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
988to992
988to992
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

zum Tagesdatum-1 bzw. -2 springen

zum Tagesdatum-1 bzw. -2 springen
05.07.2008 00:39:44
Walter
Hallo,
ich habe nachfolgendes Makro erfolgreich in Anwendung, welches beim oeffnen der Datei den Cursor zum Tagesdatum in der bestimmten Spalte springen läßt. Da in der Datei nur Daten Mo-Fr, also ohne Wochenende angegeben sind, springt am Wochende der Cursor zum Blattanfang, soll aber dann alternativ zum gestrigen bzw. vorgestrigen Datum springen.
Wer weiß Rat ?
Danke + Gruß
Walter

Private Sub Workbook_Open()
Dim c As Range, ber As Range
Set ber = [b1:b300]
Application.ScreenUpdating = False
For Each c In ber
If c.Value = Date Then
c.Select
Exit For
Else
[b150].Select
End If
Next
Application.ScreenUpdating = True
End Sub


6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: zum Tagesdatum-1 bzw. -2 springen
05.07.2008 06:04:00
Chris
Hallo Walter,
was hälst du davon ?

Private Sub Workbook_Open()
Dim c As Range, ber As Range
Dim suche As Date
Set ber = [b1:b300]
Application.ScreenUpdating = False
If Weekday(Date, vbMonday) = 6 Then
suche = Date + 2
End If
If Weekday(Date, vbMonday) = 7 Then
suche = Date + 1
End If
For Each c In ber
If c.Value = suche Then
c.Select
Exit For
Else
[b150].Select
End If
Next
Application.ScreenUpdating = True
End Sub


gruß Chris

AW: zum Tagesdatum-1 bzw. -2 springen
05.07.2008 09:11:00
Tino
Hallo,
hier mal eine Möglichkeit ohne Schleife, sondern mit der Suchfunktion.

Private Sub Workbook_Open()
Dim sBereich As Range
Dim sucheDatum As Date
Set sBereich = Range("B1:B300")
If Weekday(Date, 2) = 6 Then
sucheDatum = Date + 2
ElseIf Weekday(Date, 2) = 7 Then
sucheDatum = Date + 1
Else
sucheDatum = Date
End If
Set sBereich = sBereich.Find(sucheDatum, , xlFormulas _
, xlPart, xlByRows, xlNext, False, False)
If sBereich Is Nothing Then
MsgBox _
"Das Datum: " & sucheDatum & Chr(13) & "konnte nicht gefunden werden"
Else
sBereich.Select
End If
End Sub


Gruß Tino

www.VBA-Excel.de


Anzeige
hier noch eine Variante
05.07.2008 10:03:45
Matthias
Hallo Walter
Ich gehe davon aus, das die Wochenenden tatsächlich nicht aufgeführt sind.
Also nicht nur ausgeblendet, sondern gar nicht mit eingetragen. Wenn ich richtig liege,
dann geht es (so denke ich) so am einfachsten.
Ich habe es mal als Modul im Beispiel.

Sub Walter()
Dim c As Range, ber As Range
Dim Tag As Date
Tag = Date
Set ber = [b1:b300]
'Application.ScreenUpdating = False
For Each c In ber
If c.Value = Tag Then c.Select: Exit Sub
If c.Value > Tag Then c.Offset(-1, 0).Select: Exit Sub
Next
Range("B150").Select
' Application.ScreenUpdating = True
End Sub


hier das Beispiel:
https://www.herber.de/bbs/user/53612.xls
Gruß Matthias

Anzeige
AW: zum Tagesdatum-1 bzw. -2 springen
05.07.2008 18:16:00
Erich
Hallo Walter,
noch ne Variante:
Cells(Application.Match(CDbl(Date), Range("B1:B300"), 1), 2).Select
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort

ist gespeichert :o) _oT
05.07.2008 21:32:00
Matthias

AW: zum Tagesdatum-1 bzw. -2 springen
07.07.2008 23:10:00
Walter
Hallo an Alle,
mit Dank für die reichhaltigen Antworten (habe mal wieder gemerkt, daß ich keine Ahnung habe :-))) )
Die Lösungen scheinen alle zu funzen, wobei mir die Einzeilenvariante von Erich am Besten zusagt.
Gruß
Walter

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige