Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1420to1424
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

Datum neu berechnen

Datum neu berechnen
12.04.2015 12:25:07
Fabi
Hallo Forum
kann mir jemand helfen mein Code zu ändern
Ich habe 2 Textboxen, wo ein Datum berechnet wird.
Zur Zeit wird noch in der Textbox4 ein Datum ausgegeben, dass 7 Tage nach dem Anfangsdatum 8Combox4-6) liegt
                datA = CDate(ComboBox4 & "." & ComboBox5 & " " & ComboBox6)
TextBox4 = Format(datA + 7, "d. mmmm yyyy")

kann mir irgendjemand den Code so ändern, dass nicht 7 Tage nach dem Anfangsdatum berechnet wird, sonder 3 Monate danach?
funktioniert das irgendwie, oder geht das nicht, da es unterschiedliche Monatslängen gibt (30,31 Tage,....) ?
Ich habe schon einwenig rumprobiert, aber so richtig funktioniert das nicht.
Bitte

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

Betreff
Datum
Anwender
Anzeige
DateSerial ...
12.04.2015 14:51:51
Matthias
Hallo
Ansonsten benutze DateSerial
hier ohne Fehlerbehandlung (setzt also ein gültiges Datum voraus!)
Dim DatePlus3Monate As Date
Dim Data As Date
Data = "30.01.2015"
DatePlus3Monate = DateSerial(Year(Data), Month(Data) + 3, Day(Data))
MsgBox Format(DatePlus3Monate, "d. mmmm yyyy")
Prinzip verstanden ;-)
Gruß Matthias

Anzeige
Datum plus x Monate
13.04.2015 11:22:24
Erich
Hi Fabi,
spannend sind hier eigentlich nur die Tage am Monatsende. Probier mal

Dim datT As Date, datD0 As Date, datD1 As Date
datT = CDate(ComboBox4 & "." & ComboBox5 & " " & ComboBox6)
datD0 = DateSerial(Year(datT), Month(datT) + 3 + (Day(datT + 1) = 1) + 1, _
Day(datT) * (Day(datT + 1) > 1))
datD1 = DateSerial(Year(datT), Month(datT) + 3 + (Day(datT + 1) = 1), 0)
TextBox4 = Format(Application.Min(datD0, datD1), "d. mmmm yyyy")
für den 28. Febr. 2015
Und schau mal hier: https://www.herber.de/forum/archiv/768to772/t769578.htm#769597
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Datum plus x Monate
13.04.2015 14:30:23
Fabi
Hey Erich,
deine Lösung ist zwar schön, funktioniert aber nicht so wirklich -
Bsp.:
ich gebe ein den 31.August ein und lasse mir es ausrechnen, dann kommt der 30. September raus, dass passt nicht so ganz
grüße Fabi

Datum plus x Monate - korrigiert
13.04.2015 16:56:11
Erich
Hi Fabi,
tja, da hast du mich erwischt... Im Code waren noch ein paar Vorzeichenprobleme. :-(
Probier es mal mit

datT = CDate(ComboBox4 & "." & ComboBox5 & " " & ComboBox6)
datD0 = DateSerial(Year(datT), Month(datT) + 3 - (Day(datT + 1) = 1) + 1, _
-Day(datT) * (Day(datT + 1) > 1))
datD1 = DateSerial(Year(datT), Month(datT) + 3 - (Day(datT + 1) = 1), 0)
TextBox4 = Format(Application.Min(datD0, datD1), "d. mmmm yyyy")
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
Datum plus x Monate - und noch mal...
14.04.2015 11:41:07
Erich
Hi Fabi,
sorry, da war noch was... Hier sollte es besser sein:

datT = CDate(ComboBox4 & "." & ComboBox5 & " " & ComboBox6)
datD0 = DateSerial(Year(datT), Month(datT) + TextBox7 - _
(Day(datT + 1) = 1) + 1, 0)
datD1 = DateSerial(Year(datT), Month(datT) + TextBox7 - _
(Day(datT + 1) = 1), -Day(datT) * (Day(datT + 1) > 1))
TextBox4 = Format(Application.Min(datD0, datD1), "d. mmmm yyyy")
Und hier noch eine Spielmappe, in der schön zu sehen ist, dass es sehr darauf ankommen kann,
ob man zuerst die Wochen und dann die Monate oder umgekehrt addiert:
https://www.herber.de/bbs/user/97071.xlsm
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

Anzeige
AW: Datum plus x Monate - und noch mal...
14.04.2015 16:04:58
Fabi
Hey Erich,
danke für deine Lösungen :-D
kleine Frage - wo kommt Textbox7 her?
entweder ich bin doof, oder kann nicht soweit denken
Danke dir
Fabi

Anzahl Monate
14.04.2015 16:18:35
Erich
Hi Fabi,
sorry, da der Code natürlich nicht nur für 3, sondern auch für andere Monatsanzahlen gilt,
habe ich bei mir eine Textbox dafür eingebaut.
Ersetze Textbox7 einfach durch die Zahl 3.
Rückmeldung wäre nett! - Grüße aus Kamp-Lintfort von Erich

AW: Anzahl Monate
14.04.2015 17:08:29
Fabi
Hey Erich,
!!!!!!!!! DANKE !!!!!!!!!!!
das sieht jetzt super aus.
funktioniert super
ganz großes Lob an dich
Fabi
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige