Dieses Forum nutzt Cookies
Dieses Forum verwendet Cookies, um deine Login-Informationen zu speichern, wenn du registriert bist, und deinen letzten Besuch, wenn du es nicht bist. Cookies sind kleine Textdokumente, die auf deinem Computer gespeichert werden. Die von diesem Forum gesetzten Cookies werden nur auf dieser Website verwendet und stellen kein Sicherheitsrisiko dar. Cookies aus diesem Forum speichern auch die spezifischen Themen, die du gelesen hast und wann du zum letzten Mal gelesen hast. Bitte bestätige, ob du diese Cookies akzeptierst oder ablehnst.

Ein Cookie wird in deinem Browser unabhängig von der Wahl gespeichert, um zu verhindern, dass dir diese Frage erneut gestellt wird. Du kannst deine Cookie-Einstellungen jederzeit über den Link in der Fußzeile ändern.

Kommentare in Kalender
#31
Wer mir dies erklären kann, bekommt ein großes Fleißbienchen!
Direktfenster:
Code:
?CDate("29.2.33")
13.01.1980
Huh
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#32
@ Ralf
ich denke MS kanns - wird aber wohl keiner von denen Lust dazu haben.
Aber vielleicht liegt die Ursache in der im Hintergrund verarbeiteten Datumszahl.
Tagesziffern und Monatsziffern springen am Ende eines Zahlenkreises, während die Datumszahl linear weiterläuft.
1.1.23 = 44927
2.1.23 = 44928
 
usw.
31.1.23 = 44957
ja und dann der Sprung.
1.2.23 = 44958
 
Wenn jetzt nach dem Sprung ein nicht real existierendes Datum abgefragt wird die Datumszahl einfach einen falschen/unsinnigen Wert haben.
 
Ich schiebe es auf die Linearität der Datumszahl zu den Zahlensprüngen im Datumsaufbau. Ich kann natürlich auch voll daneben liegen, aber vielleicht kennt snb die wahren Gründe und ist so nett uns das mal zu erklären.
 
Gruß Uwe
Antworten Top
#33
Ich gebe mir selbst das Fleißkärtchen.  19
• entferne die Punkte aus 29.2.33
• 29233, als Datum formatiert, ergibt den 13.01.1980

Da ist der Interpretationsspielraum von VBA "etwas" (zu) weit gefasst …
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. 
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Antworten Top
#34
das erklärt die Sache und noch ein anderes nun nicht mehr seltsames Verhalten.
 
Also macht VBA bei unsinnigen Datum einfach eine Datumszahl draus.
Mich hatte schon gewundert, warum bei InstrRev der Punkt nicht gefunden wurde (war mein erster Gedanke das Kalenderjahr egal was davor steht abzutrennen).
 
Gruß Uwe
Antworten Top
#35
Hallo Uwe,

wollte dir das in einer privaten Nachricht schreiben, diese Möglichkeit hast du leider deaktiviert. Du weißt schon, dass der Kalender aus deinem letzten Beitrag nicht die Daten des Jahres 2023 darstellt, sondern als Jahr 1900 verwendet?
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#36
@Klaus-Dieter,
 
ja das weiß ich, dass der Kalender, welcher nicht von mir ist, sondern vom TO keine zum Kalenderjahr korrelierenden Werte in den Zellen enthält und somit die Zahl 1 (1. Januar) also Datumszahl 1 für #31.12.1899# formelbedingt ausgibt.

Das hatte ich schon in #2 dem TO mitgeteilt und das ein Auffinden via Dateserial mittels .Find nur über Umwege möglich ist.
In seinem Fall habe ich es mit Ranges-Namen (siehe Namensmanager) identifizierbar gemacht, so dass das Dateserial sich entsprechend zusammenbauen lässt.

Was das letzte Problem war, ist das Eintragen ungültiger Datumswerte ins Listobject zu verhindern. Dabei tauchte bei Kurzdatumseingaben der Fall auf, dass VBA einfach die Punkte rauschmeißt und aus den Ziffern eine Datumszahl macht - rausbekommen hats Ralf.

Als Lösung des Problems kann man den Weg über Split (weil Variant String) gehen, um mit IsDate sich ein Dateserial zusammenzubauen lässt, was als vollständiges Datum zur Auswertung IsDate = False (kein Datum) herangezogen werden kann.

Es mag sicherlich weitere und durchaus elegantere Möglichkeiten zu diesem Thema geben. Es war eben mein Lösungsweg dazu.
Aber danke für die Rückmeldung und schöne Feiertage
 
Gruß Uwe
Antworten Top
#37
Hallo Uwe,

OK, den vollständigen Beitrag hatte ich nicht gelesen, war über das Datum-Problem nur gestolpert, weil ich ein allgemeines Interesse an Excel-Kalendern aller Art habe. Habe da auch Lösungsansätze für das Thema Kommentare in Verbindung mit Kalenderdaten. Hatte das Beispielsweise für die Anzeige von Feiertagen genutzt. Weil mich der TO hier im Forum vor einiger Zeit von der Seite "angepault" hatte, helfe ich ihm nicht mehr. Grundsätzlich ist es kein Problem, solch einen Kalender mit echten Datumseinträgen zu versehen. 
Dir ein schönes Restweihnachten und einen guten Rutsch ins neue Jahr.
Viele Grüße
Klaus-Dieter
Der Erfolg hat viele Väter, 
der Misserfolg ist ein Waisenkind
Richard Cobden
Antworten Top
#38
Erstmal allen hier zu den Beiträgen vielen Dank für Eure Hilfe, vorallen an @Egon12

Jetzt funzen die Kommentare, auch wenn ein falscher Datumswert eingetragen wird.

Doppelte Datumeingaben werden jetzt markiert und über eine MsgBox angezeigt

Wenn ich noch etwas Lust find, werde ich die Feiertage genau so mit Kommentaren markieren.

Nochmals vielen Dank!
Antworten Top


Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste