Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
924to928
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
924to928
924to928
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

An Hajo_Zi

An Hajo_Zi
09.11.2007 14:25:36
otto
Hallo Hajo,
habe einen Code von dir gefunden, der es mir ermöglicht durch Eingabe einer KW das Datum zu erzeugen.
Wie kann man den Code ändern, dass bei Eingabe einer KW kleiner als heute das Datum für nächstes Jahr genommen wird?
otto

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: An Hajo_Zi
09.11.2007 14:50:42
Rudi
Hallo,
kenne Hajos Code nicht. Sowas?

Function Woche_von_bis_2(intKW As Integer)
'Gibt das Anfangs- und Enddatum einer Woche im Format TT.MM.-TT.MM.JJJJ aus.
Dim MonInKW As Date, intJahr As Integer, DINKW As Integer
Dim tmp
tmp = DateSerial(Year(Date + (8 - Weekday(Date)) Mod 7 - 3), 1, 1)
DINKW = ((Date - tmp - 3 + (Weekday(tmp) + 1) Mod 7)) \ 7 + 1
intJahr = Year(Date) - (intKW 


Gruß
Rudi
Eine Kuh macht Muh, viele Kühe machen Mühe

AW: An Hajo_Zi
12.11.2007 11:18:33
otto
Hi, hier das Beispiel von Hajo
https://www.herber.de/bbs/user/47607.xls
wir haben jetzt KW 46 gebe ich KW 50 ein kommt 10.12.07.
Wenn ich nun KW 20 eingebe, soll entsprechendes Datum für nächstes Jahr erscheinen. Wir benötigen das für Bestellungen. (Liefertermine)
otto

Anzeige
AW: Montag für Kalenderwoche im nächsten Jahr
12.11.2007 22:20:00
Hajo_Zi
Hallo Otto,
es wäre wohl von Vorteil gewesen hättest Du die Datei sofort hochgeladen oder den Ursprung verlinkt. Ich hoffe mal ich habe es korrekt verstanden.

Function Montag_1(InKW As Date) As Date
'   wird benöigt für TXT_Kw
'   Montag ermitteln
' http://www.excelformeln.de/ _
formeln.html?welcher=186
'   Ermittlung in Tabelle
'   Sensationell verkürzt von Peter Dorigo:
'   =DATUM(A2;1;7*A1-3-WOCHENTAG(DATUM(A2;;);3))
Montag_1 = DateSerial(Year(Date) + 1, 1, 7 * InKW - 3 - Weekday(DateSerial(Year(Date) + 1,  _
0, 0), 3))
End Function
'   Ereignis, welches bei Verlassen ausgelöst wird
'Private Sub TXT_Kw_AfterUpdate()
Private Sub TXT_Kw_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If TXT_Kw = 0 Or TXT_Kw = "" Then
TXT_Kw = ""                         ' Textbox löschen falls Null eingegeben wurde
'   Prüfen ob eingegebene Zahl größer als Kalenderwochen im aktuellen Jahr
Else
If KALENDERWOCHE_DIN(Date) > CInt(TXT_Kw) Then
If KALENDERWOCHE_DIN("31.12." & Year(Date)) = 1 Then
If CInt(TXT_Kw) > 52 Then
TXT_Kw = ""                         ' Eingabe Kalenderwoche löschen
LBL_Montag.Caption = ""             ' Anzeige Montag löschen
Else
'               ermitteln des Montags der Kalenderwoche und Anzeige in LBL_Montag
LBL_Montag.Caption = "Montag, den " & Format(Montag_1(TXT_Kw), "dd.mm.yy")
End If
Else
If CInt(TXT_Kw) > KALENDERWOCHE_DIN("31.12." & Year(Date)) Then
TXT_Kw = ""                         ' Eingabe Kalenderwoche löschen
LBL_Montag.Caption = ""             ' Anzeige Montag löschen
Else
'               ermitteln des Montags der Kalenderwoche und Anzeige in LBL_Montag
LBL_Montag.Caption = "Montag, den " & Format(Montag_1(TXT_Kw), "dd.mm.yy")
End If
End If
Else
If KALENDERWOCHE_DIN("31.12." & Year(Date)) = 1 Then
If CInt(TXT_Kw) > 52 Then
TXT_Kw = ""                         ' Eingabe Kalenderwoche löschen
LBL_Montag.Caption = ""             ' Anzeige Montag löschen
Else
'               ermitteln des Montags der Kalenderwoche und Anzeige in LBL_Montag
LBL_Montag.Caption = "Montag, den " & Format(Montag(TXT_Kw), "dd.mm.yy")
End If
Else
If CInt(TXT_Kw) > KALENDERWOCHE_DIN("31.12." & Year(Date)) Then
TXT_Kw = ""                         ' Eingabe Kalenderwoche löschen
LBL_Montag.Caption = ""             ' Anzeige Montag löschen
Else
'               ermitteln des Montags der Kalenderwoche und Anzeige in LBL_Montag
LBL_Montag.Caption = "Montag, den " & Format(Montag(TXT_Kw), "dd.mm.yy")
End If
End If
End If
End If
End Sub


Ich habe jetzt keine Optimierungen durchgeführt.

Anzeige
Danke
13.11.2007 08:13:48
otto
Genau so wollte ich es haben
Gruß otto

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige