Supportnet / Forum / Tabellenkalkulation
Warum ist heute() 38867 ?
Frage
Hallo allerseits,
bin neu hier, und hab gleich ne ganze doofe Frage.
Also, ich würde gerne die Excel Datumsfunktion verwenden, um damit einen summewenn Funktion zu basteln.
Ich habe eine Liste mit Bestellungen und zugehörigen Lieferdatums, und zwar so:
artikelnummer anzahl datum
1234 100 20060602
Das Datum ist hier in einer Text Zelle, und Excel behandelt es einfach wie die Zahl 20 millionen 60 tausend usw.
Jetzt soll er das in deiser Datei nach dem heutigen Datum suchen, und alle Bestellungen auf die das heutige Datum zutrifft summieren.
Das habe ich mit der heute() Funktion gelöst und eine summewenn funktion gebastelt.
Nur findet er nie Daten zum heutigen Datum, was wohl damit zusammenhängt, das er das heutige Datum als 38867 intepretiert, und auch danach in der anderen Liste sucht. Dort kann er damit natürlich die 2000530 nicht finden ...
Jemand ne Idee wie man das eine Format ins andere umwandelt / rechnet ?
Antwort 1 von waddehaddedudeda
Naja recht neu ;)
Antwort 2 von JoeKe
Hallo waddehaddedudeda,
gib deiner Zelle, in dem deine Heute() Funktion steht, das Benutzerdefenierteformat JJJJMMTT.
MfG
JöKe
gib deiner Zelle, in dem deine Heute() Funktion steht, das Benutzerdefenierteformat JJJJMMTT.
MfG
JöKe
Antwort 3 von waddehaddedudeda
Dankeschön schonmal für die schnelle Antwort,
aber leider zeigt er mir dann 20060506 an, aber der Wert (zahlenmässig) ist immer noch 38867, übrigens die Anzahl der Tage seit dem 1.1.1900 bis heute ;)
und solange excel den wert nicht als Zahl "20060506" interpretiert ist mir nich geholfen ...
aber leider zeigt er mir dann 20060506 an, aber der Wert (zahlenmässig) ist immer noch 38867, übrigens die Anzahl der Tage seit dem 1.1.1900 bis heute ;)
und solange excel den wert nicht als Zahl "20060506" interpretiert ist mir nich geholfen ...
Antwort 4 von JoeKe
Hallo,
hab grad gesehen das in der Liste das Datum wohl als Zahl (20060530) eingegeben wird, dann klappt das mit der Formatierung leider nicht.
Gruß
hab grad gesehen das in der Liste das Datum wohl als Zahl (20060530) eingegeben wird, dann klappt das mit der Formatierung leider nicht.
Gruß
Antwort 5 von JoeKe
Hallo,
versuch es mal so:
=(HEUTE()*(C1/HEUTE()))
die Zelle als Standart formatieren.
Gruß
JöKe
versuch es mal so:
=(HEUTE()*(C1/HEUTE()))
die Zelle als Standart formatieren.
Gruß
JöKe
Antwort 6 von waddehaddedudeda
aha, und was ist C1?
Wenn C1 = heute() dann kommt wieder 38867 raus, wenn C1 = die zelle in die ich schreib dann isses nen zirkelbezug.
Also was meinst du mit C1?
Oder besser, bist Du Dir sicher das das so was wird?
Grüße
Wenn C1 = heute() dann kommt wieder 38867 raus, wenn C1 = die zelle in die ich schreib dann isses nen zirkelbezug.
Also was meinst du mit C1?
Oder besser, bist Du Dir sicher das das so was wird?
Grüße
Antwort 7 von mein_Tipp
Mahlzeit!
Also irgendetwas verstehe ich hier nicht.
Was genau steht wo und wie soll es ausgegeben werden?
Mein Vorschlag wäre, die Textzeile (hier A1) wo das Datum enthalten ist wie folgt zu splitten
=DATUM(TEIL(RECHTS(A1;8);1;4);TEIL(RECHTS(A1;8);5;2);TEIL(RECHTS(A1;8);7;2))
und als Datum auszugeben.
Nun wird die Textzeile als Datum interpretiert und eine Summewenn-Formel sollte möglich sein.
Bin mir aber nicht sicher, ob ich alles richtig verstanden habe.
Klaus
Also irgendetwas verstehe ich hier nicht.
Was genau steht wo und wie soll es ausgegeben werden?
Mein Vorschlag wäre, die Textzeile (hier A1) wo das Datum enthalten ist wie folgt zu splitten
=DATUM(TEIL(RECHTS(A1;8);1;4);TEIL(RECHTS(A1;8);5;2);TEIL(RECHTS(A1;8);7;2))
und als Datum auszugeben.
Nun wird die Textzeile als Datum interpretiert und eine Summewenn-Formel sollte möglich sein.
Bin mir aber nicht sicher, ob ich alles richtig verstanden habe.
Klaus
Antwort 8 von JoeKe
Hallo,
in C1 habe ich das Datum 20060530 wie es in deiner Liste steht.
Ist aber völliger blödsinn, da sich heute() ja aufhebt und ich gleich =C1 hätte schreiben können.
in C1 habe ich das Datum 20060530 wie es in deiner Liste steht.
Ist aber völliger blödsinn, da sich heute() ja aufhebt und ich gleich =C1 hätte schreiben können.
Antwort 9 von waddehaddedudeda
Die richtige Antwort lautet:
in Zelle a1 steht 1050118
in b1 steht =DATUM(TEIL(A2;2;2)+2000;TEIL(A2;4;2);RECHTS(A2;2))
in den nachfolgenden Zeilen von a stehen die übrigen Datumswerte.
Die Formel aus b1 kann man wenn Zelle b1 angeklickt ist, mit Maus auf untere rechte Ecke (erscheint Kreuz) nach unten ziehen.
hab das aus einem anderen Eintrag in diesem Forum, und es macht was ich möchte ,)
Auch wenns jetzt andersrum ist, er erkennt meine Werte jetzt als dieses total beschränkte Excel Daten format, und damit kann er dann wieder vergleichen ...
Danke trotzdem allerseits,
Grüße
in Zelle a1 steht 1050118
in b1 steht =DATUM(TEIL(A2;2;2)+2000;TEIL(A2;4;2);RECHTS(A2;2))
in den nachfolgenden Zeilen von a stehen die übrigen Datumswerte.
Die Formel aus b1 kann man wenn Zelle b1 angeklickt ist, mit Maus auf untere rechte Ecke (erscheint Kreuz) nach unten ziehen.
hab das aus einem anderen Eintrag in diesem Forum, und es macht was ich möchte ,)
Auch wenns jetzt andersrum ist, er erkennt meine Werte jetzt als dieses total beschränkte Excel Daten format, und damit kann er dann wieder vergleichen ...
Danke trotzdem allerseits,
Grüße
Antwort 10 von CaroS
Hallo w*,
es sieht so aus, als ob Du die einen Datumswerte (Lieferdaten) an den anderen (heute) anpassen müsstest oder umgekehrt. Wahrscheinlich ist es einfacher, nur das heutige Datum anders anzugeben als eine größere Bestellliste zu ändern. Deshalb würde ich dafür wahrscheinlich eine Formel wie diese:
=JAHR(HEUTE()) * 10000 + MONAT(HEUTE())* 100 + TAG(HEUTE())
(oder eine ähnliche) verwenden. Wie man sieht, ist auch das eine echte Zahl, sie müsste sich also mit den anderen Datumswerten gut vertragen. Nützt Dir das was?
Gruß,
CaroS
es sieht so aus, als ob Du die einen Datumswerte (Lieferdaten) an den anderen (heute) anpassen müsstest oder umgekehrt. Wahrscheinlich ist es einfacher, nur das heutige Datum anders anzugeben als eine größere Bestellliste zu ändern. Deshalb würde ich dafür wahrscheinlich eine Formel wie diese:
=JAHR(HEUTE()) * 10000 + MONAT(HEUTE())* 100 + TAG(HEUTE())
(oder eine ähnliche) verwenden. Wie man sieht, ist auch das eine echte Zahl, sie müsste sich also mit den anderen Datumswerten gut vertragen. Nützt Dir das was?
Gruß,
CaroS
Antwort 11 von Aliba
Hi wadde....,
in Spalte A stehen Artikelnummern, in Spalte B Mengen, in SpalteC dieses Textdatum z.b. für heute 20060530.
Formel für Anzahl Bestellungen für ´heute:
=ZÄHLENWENN(C:C;TEXT(HEUTE();"JJJJMMTT"))
Formel für die Menge aller bestellungen für diesen Tag:
=SUMMEWENN(C:C;TEXT(HEUTE();"JJJJMMTT");B:B)
CU Aliba
in Spalte A stehen Artikelnummern, in Spalte B Mengen, in SpalteC dieses Textdatum z.b. für heute 20060530.
Formel für Anzahl Bestellungen für ´heute:
=ZÄHLENWENN(C:C;TEXT(HEUTE();"JJJJMMTT"))
Formel für die Menge aller bestellungen für diesen Tag:
=SUMMEWENN(C:C;TEXT(HEUTE();"JJJJMMTT");B:B)
CU Aliba
Antwort 12 von fürLau
Hallo
So gings auch:
Funktion in ein Modul kopieren...
.;-)
..liefert ein Excel datum in der Zelle mit =wadde(C2) wenn in Zell C2 die Zahl 20060601 steht.
Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt
So gings auch:
Funktion in ein Modul kopieren...
Option Explicit
Public Function wadde(ByVal haddeDu As Range)
Dim waddeha$, dudaDa As Date
waddeha = CStr(haddeDu.Value)
If Len(waddeha) <> 8 Then Exit Function
dudaDa = DateSerial(Val(Left(waddeha, 4)), _
Val(Mid(waddeha, 5, 2)), Val(Right(waddeha, 2)))
wadde = dudaDa
End Function
.;-)
..liefert ein Excel datum in der Zelle mit =wadde(C2) wenn in Zell C2 die Zahl 20060601 steht.
Gruß[h3]{[h1]Ó¤[sup...fürLau
Signatur wurde ganz und gar ohne SNTool erstellt
Antwort 13 von waddehaddedudeda
Hehe, ihr seid mir nen paar Scherzkekse ... Aber nunja hauptsache is das es jetzt geht ;)
Danke nochmal für die zahlreichen Hilfestellungen!
Danke nochmal für die zahlreichen Hilfestellungen!