11.06.2024, 10:22 (Dieser Beitrag wurde zuletzt bearbeitet: 11.06.2024, 14:36 von Rabe.)
Hallo zusammen,
um ganz einfach und schnell ein Datum zu ändern, habe ich in einer Datei folgende Drehfelder.
Wenn ich dort im Monat oben bei 12 angekommen bin, muß ich ja immer wieder auf den runter-Button klicken, bis ich wieder auf der 1 bin. Gibt es eine Lösung, daß ich einfach weiterklicke, um nach der 12 (analog 31) auf die 1 zu kommen? Gerne auch mit einem anderen Steuerelement.
interessant mal wieder einen Thread von dir im Forum zu sehen. Wie gefällt dir meine Lösung?? Es gibt einen kleinen Fehler beim Rückwärtszählen, da springt er vom 1.1.xx auf den 30.12.xx Die anderen Tage sollten stimmen. Schaltjahr 29.2. klappte nicht. Kannst du damit leben??
Der Spinner für Tage muss auf Min=0 und Max=32 eingestellt sein. Der Spinner für Monat muss auf Min=0 und Max=13 eingestellt sein. Unten noch der Code für interessierte.
mfg Gast 123
Code:
Dim Tag, Monat, Jahr
Sub Tages_Spinner_auswerten() Tag = Range("Q3") Monat = Range("Q2") Select Case Range("Q2") Case 2 If Month(Range("P3")) = 3 Then Range("Q3").Value = 1 Range("Q2").Value = 3 ElseIf Month(Range("P3")) = 1 Then Range("Q3").Value = 28 Range("Q2").Value = 1 End If Case 1, 3, 5, 7, 8, 10, 12 If Range("Q3").Value = 32 Then Range("Q3").Value = 1 Range("Q2").Value = Monat + 1 ElseIf Range("Q3").Value = 0 Then Range("Q3").Value = 30 Range("Q2").Value = Monat - 1 If Range("Q2") = 2 Then _ Range("Q3").Value = 28 End If Case 4, 6, 9, 11 If Range("Q3").Value >= 31 Then Range("Q3").Value = 1 Range("Q2").Value = Monat + 1 ElseIf Range("Q3").Value = 0 Then Range("Q3").Value = 31 Range("Q2").Value = Monat - 1 End If End Select
If Range("Q2") = 0 Or Range("Q2") = 13 Then _ Monat_Spinner_auswerten End Sub
Sub Monat_Spinner_auswerten() Jahr = Range("Q1") If Range("Q2") = 13 Then Range("Q1").Value = Jahr + 1 Range("Q2").Value = 1 ElseIf Range("Q2") = 0 Then Range("Q1").Value = Jahr - 1 Range("Q2").Value = 12 End If End Sub
Folgende(r) 1 Nutzer sagt Danke an Gast 123 für diesen Beitrag:1 Nutzer sagt Danke an Gast 123 für diesen Beitrag 28 • Rabe
Moin und sorry! Das ist doch eine Schnapsidee! Was soll passieren, wenn bei eingestelltem Tag 30 der Monat von 1 auf 2 geändert wird? Warum sollte man jemals die Maus nutzen um schnell ein gültiges Datum einzugeben? Nach kurzer Schulung weiß jeder Nutzer, dass nur der Nummernblock benötigt wird: • 7-8 ergibt den 07.08.2024 • ein abweichendes Jahr wird so eingegeben: 2-5-25 → 02.05.2025
Gruß Ralf
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)
Folgende(r) 1 Nutzer sagt Danke an RPP63 für diesen Beitrag:1 Nutzer sagt Danke an RPP63 für diesen Beitrag 28 • Rabe
12.06.2024, 09:13 (Dieser Beitrag wurde zuletzt bearbeitet: 12.06.2024, 09:13 von Rabe.)
Hallo Gast,
ja, leider habe ich schon eine ganze Weile nicht mehr die Zeit für das Forum.
Vielen Dank für Deine Ideen und das Makro, das klappt hervorragend. Es ist sogar noch besser, als mein Auftraggeber sich gewünscht hat, da auch der Monat und das Jahr gewechselt wird, wenn der Tag die jeweilige Grenze überschreitet.
Gruß Ralf Hallo Uwe, stimmt, so geht es auch. Da ist dann halt in der Hilfszelle Q3 keine richtige Tageszahl drin. Aber die Anzeige stimmt.
Gruß Ralf Hallo Ralf,
ja, das ist mit dem Zahlenblock auch sehr einfach. Nur wollte der Auftraggeber halt die Eingabe mit der Maus, weil in der Originaldatei fast alles mit der Maus erfolgt und dann nicht zur Tastatur gewechselt werden muß.
Da braucht man doch gar kein Makro, da reicht es wenn man das Datum mittels der gleichnamigen Funktion anhand der mit den Drehfeldern verknüpften Zellen ermittelt...