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

Einstellung Excel bei Datum ??

Einstellung Excel bei Datum ?
28.03.2006 08:51:55
Sylvio
Hallo @all
ich möchte bei mir ein Startdatum + 1Monat rechnen soweit so gut.
allso A1 Startdatum rein und in Zelle A2 '=EDATUM(A1;1) getippt.
Da zeigt er nun #Name? an.
Ich weiß das er dann meint; ich sollte doch mal schauen ob ich Analysefunktion bei den AddIns anhabe. Ist auch an bei mir trotzdem geht es nicht. Hab das selbe Problem bei Kalenderwoche(). Ist da nicht grundsätzlich was an den EXCEL-Einstellungen falsch?
Und meine zweite Frage wie müsst ich das über VBA schreiben?
Danke Sylvio

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

Betreff
Datum
Anwender
Anzeige
AW: Einstellung Excel bei Datum ?
28.03.2006 09:14:51
UweD
Hallo
machchmal sind hier auch die englischen Analyseformeln einzutragen.
=Edate(..)
Bei der Installation konnte das aber auf Multilanguage umgestellt werden.
Deshalb versuche ich alle Formeln ohne die Analysefunktionen auszuführen..
Bei Kalenderwoche gibt es sogar noch ein Problem, Excel rechnet da nach Ami-Standard und nicht nach DIN.
Alternative siehe unten...
so.
 
 AB
128.03.200628.04.2006
2  
3KW13
Formeln der Tabelle
A1 : =HEUTE()
B1 : =DATUM(JAHR(A1);MONAT(A1)+1;TAG(A1))
B3 : =KÜRZEN((A1-DATUM(JAHR(A1+3-REST(A1-2;7));1;REST(A1-2;7)-9))/7)
 

Gruß UweD
(Rückmeldung wäre schön)
Anzeige
AW: Einstellung Excel bei Datum ?
28.03.2006 09:23:02
Sylvio
Hallo Uwe,
tatsächlich edate funzt.
Mit der Kalenderwoche hab ich das dann auch so gelöst, wie Sie es geschrieben haben.
Haben Sie vielleicht noch ne VBA Lösung für mich, weil mein Kopf gerade irgendwie leer ist. :-)
Bitte nicht aber die Möglichkeit der Worksheetsfunctions.
Gruß Sylvio
Hab ne Lösung für VBA, wenn es interessiert :-)
28.03.2006 09:32:04
Sylvio
Hallo @all,

Sub Zeit()
LetzterTag ("22.03.2005")
End Sub


Function LetzterTag(Startdatum As Date) As Date
LetzterTag = DateSerial(Year(Startdatum), Month(Startdatum) + 1, Day(Startdatum))
End Function

Gruß Sylvio
Anzeige
AW: Einstellung Excel bei Datum ?
28.03.2006 09:48:41
UweD
Hallo
geht so...

Function DINKwoche(Datum)
'Kalenderwoche nach DIN
Dim tmp
tmp = DateSerial(Year(Datum + (8 - Weekday(Datum)) Mod 7 - 3), 1, 1)
DINKwoche = ((Datum - tmp - 3 + (Weekday(tmp) + 1) Mod 7)) \ 7 + 1
End Function


Function E_DATUM(Datum, Monat)
'Ersatz für Edatum der Analysefunktion
E_DATUM = DateSerial(Year(Datum), Month(Datum) + Monat, Day(Datum))
End Function

in der Tabelle wird es so verwendet
 
 ABC
128.03.200628.04.200613
2   
3 über VBA Funktionen 
Formeln der Tabelle
A1 : =HEUTE()
B1 : =E_Datum(A1;1)
C1 : =DINKwoche(A1)
 

Gruß UweD
(Rückmeldung wäre schön)
Anzeige
AW: Einstellung Excel bei Datum ?
28.03.2006 09:56:28
Sylvio
Danke
das mit der Kalenderwoche werde ich mir rausziehen.
werde mal sehen ob alles funzt wie ichs mir vorstelle.
Wenn ich Month(Datum) + 1 rechne berücksichtig der dann auch ob er 31, 30 oder 28 Tage dazurechnet?
Gruß sylvio
AW: Einstellung Excel bei Datum ?
28.03.2006 10:25:31
Sylvio
Hallo Uwe,
also ich kann diese Formel zwar nachvolziehen, aber ich brauch die komischerweise nicht. Denn Edate() erkennt ob es sich um einen Februrar (28) oder März(31) handelt. kommt bei mir bei beiten das selbe raus.
Nur bei VBA weiß ich es noch nicht. Teste das aber gleich mal.
Gruß Sylvio
Anzeige
Ich bekomme es nicht hin
28.03.2006 11:15:46
Sylvio
Hallo Uwe,
ich hab ja in Vba diesen Text:

Function LetzterTag(Startdatum As Date) As Date
LetzterTag = DateSerial(Year(Startdatum), Month(Startdatum) + Month(startdatum)+1, Day(Startdatum))
Application.ThisWorkbook.Sheets(1).Cells(5, 3).Value = LetzterTag
End Function

hier erkennt er allerdings nicht, das er bei Februar nur 28 tage nehmen muss! wie bei edate im excel hier haut er stur 31 tage drauf.
Wie kann ich das lösen?
Gruß Sylvio
Juhu ich habs (selbstgespräch)
28.03.2006 11:27:10
Sylvio
Ich hab die Lösung wenn es interessiert.

Function LetzterTag(Startdatum As Date) As Date
'LetzterTag = DateSerial(Year(Startdatum), Month(Startdatum) + 1, Day(Startdatum))
LetzterTag = DateAdd("m", 1, Startdatum)
End Function

Gruß sylvio
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige