Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
1552to1556
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
Inhaltsverzeichnis

Wochen in Tage umwandeln

Wochen in Tage umwandeln
10.04.2017 12:31:12
Nadine
Hallo :);
folgendes zur Vorgeschichte:
Ich habe eine Exceltabelle, in der in jeder Spalte ein Datum (Zeile 6) steht (also vom 1.1.2017 - 31.12.2017) und darüber die jeweilige KW(Zeile 4) (1-52).
Jetzt hab ich ein Makro produziert, dass gewisse Spalten ausblendet und so ist immer nur noch die aktuelle KW, eine Woche vorher und 4 Wochen danach sichtbar sind.
Hier das Programm:
Private Sub Worksheet_Activate()
Dim lCol As Long
Dim dtStart As Date, dtEnd As Date
Application.ScreenUpdating = False
dtStart = DatePart("ww", Date, vbMonday, vbFirstFourDays) - 1
dtEnd = DatePart("ww", Date, vbMonday, vbFirstFourDays) + 4
For lCol = 4 To UsedRange.Columns.Count
Cells(4, lCol).EntireColumn.Hidden = (Cells(4, lCol)   _
dtEnd)
Next lCol
End Sub
Ich möchte jetzt aber gerne, dass vom aktuellen Datum aus, 7 TAGE vorher und 28 TAGE danach angezeigt werden. Also nicht wie zuvor Wochen. :D
Wenn ich die DatePart Funktion mit "d" umschreibe klappt es leider nicht.
Also so:
Private Sub Worksheet_Activate()
Dim lCol As Long
Dim dtStart As Date, dtEnd As Date
Application.ScreenUpdating = False
dtStart = DatePart("d", Date, vbMonday, vbFirstFourDays) - 7
dtEnd = DatePart("d", Date, vbMonday, vbFirstFourDays) + 28
For lCol = 4 To UsedRange.Columns.Count
Cells(6, lCol).EntireColumn.Hidden = (Cells(6, lCol)   _
dtEnd)
Next lCol
End Sub
Kann mir jemand helfen und verraten wo mein Fehler liegt?
Liebste Grüße
Nadine

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Wochen in Tage umwandeln
10.04.2017 13:03:11
UweD
hallo
so...
Private Sub Worksheet_Activate()
     Dim lCol As Long
     Dim dtStart As Date, dtEnd As Date
     Application.ScreenUpdating = False
     dtStart = Date - 7
     dtEnd = Date + 28
     
   
     For lCol = 4 To ActiveSheet.UsedRange.Columns.Count
         Cells(6, lCol).EntireColumn.Hidden = (Cells(6, lCol) < dtStart Or Cells(6, lCol) > dtEnd)
     Next lCol
 End Sub

LG UweD
Anzeige
AW: Wochen in Tage umwandeln
10.04.2017 13:06:04
ChrisL
Hi Nadine
Hier noch mit ein- und ausblenden:
Private Sub Worksheet_Activate()
Dim lCol As Long
Application.ScreenUpdating = False
With ActiveSheet
For lCol = 4 To .UsedRange.Columns.Count
If .Cells(6, lCol) > Date - 7 And .Cells(6, lCol) 

cu
Chris
AW: Wochen in Tage umwandeln
10.04.2017 13:11:00
Nadine
Super, funktioniert alles ganz fantastisch :)
Vielen Dank
LG

304 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige