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

Probleme bei Monatsübergang

Probleme bei Monatsübergang
06.12.2017 09:00:23
Burak
Guten Morgen,
da mir hier echt immer super und schnell geholfen wird, wende ich mich hier gerne direkt an euch wenn ich es selbst nich hinbekomme.
Also folgendes:
startdatum = Me.TextBox1.Value
enddatum = Me.TextBox2.Value
hilfsvariablestart = Left(startdatum, 5)
hilfsvariableend = Left(enddatum, 5)
startjahr = Right(startdatum, 4)
startmonat = Right(hilfsvariablestart, 2)
starttag = Left(startdatum, 2)
endjahr = Right(enddatum, 4)
endmonat = Right(hilfsvariableend, 2)
endtag = Left(enddatum, 2)
startdatum2 = startjahr & startmonat & starttag
enddatum2 = endjahr & endmonat & endtag
tage = enddatum - startdatum
Im Eingabefenster wird ein startdatum und ein enddatum eingegeben.
Da dies im Datumsformat TT/MM/JJJJ ist und ich es als Textformat JJJJMMDD brauche extrahiere ich erst die Zahlen daraus und bilde daraus ein neues startdatum und enddatum (gekennzeichnet mit 2)
Für eine schleife, wo er jedes Datum vom Startdatum bis Enddatum verwendet
ermittle ich noch die Tage mittels enddatum - startdatum.
For i = tage To 0 Step -1
enddatum = enddatum - i
endjahr = Right(enddatum, 4)
endmonat = Right(hilfsvariableend, 2)
endtag = Left(enddatum, 2)
enddatum2 = endjahr & endmonat & endtag
Grundsätzlich funktioniert das bis auf den Fall wo es monatsübergreifen ist.
Beispiel:
Also wenn das startdatum der 25.11.2017 und das Enddatum der 05.12.2017 ist, ermittelt er zwar korrekt eine Differenz von 10 Tagen, aber wenn er in der Schleife das Enddatum 05.12.2017 die 10 tage abzieht landet er nicht bei 25.11.2017 sondern 25.12.2017.
10 Tage vom enddatum2 abziehen funktioniert nicht, da es erstens als Text formatiert ist und außerdem wenn es kein Datum ist er die Tage unter 0 nicht bei 30 sondern bei 99 anfangen würde.
Jmd ne Idee wo mein Denkfehler ist?
Freundliche Grüße
Burak Icel

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

Betreff
Datum
Anwender
Anzeige
AW: Probleme bei Monatsübergang
06.12.2017 09:43:09
Burak
Ich glaube ich habe das Problem gerade doch gefunden.
die Variable
hilfsvariableend = Left(enddatum, 5)
muss in die Schleife mit rein, da in der Schleife damit gearbeitet wird und sie immer aktuell sein muss.
Trotzdem vielen Dank an alle :*
AW: Probleme bei Monatsübergang
06.12.2017 09:57:19
yummi
Hallo Burak,
dein Datum liegt ja als text vor, wandle das doch direkt in ein Datum und nutz die Datumsfunktionen von vba.

dim datumstart as Date
dim datumende as Date
startdatum = Me.TextBox1.Value
enddatum = Me.TextBox2.Value
datumstart = DateSerial(Right$(startdatum, 4), Mid$(startdatum, 4, 2), Left$(startdatum, 2))
datumende = DateSerial(Right$(enddatum, 4), Mid$(enddatum, 4, 2), Left$(enddatum, 2))
MsgBox DateDiff("d", datumstart, datumende)
Müsste das liefern was du willst
Gruß
yummi
Anzeige
AW: Probleme bei Monatsübergang
06.12.2017 10:13:38
Burak
sah gut aus, aber gibt folgendes aus
Wenn startdatum 30.08.2017 und enddatum 01.09.2017 ist gibt
erstens die variable datumstart nicht 20170830 aus sondern ebenfalls 30.08.2017 aus
und zweitens die variable datumend ebenfalls 01.09.2017 statt 20170901
Die Differenzberechnung funktioniert auch mti deinem Code.
Aber danke für den Hinweis auf die Funktion Mid() statt erst Right udn dann Left zu benutzen :*

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige