Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1168to1172
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
Aktuelles Jahr
BerndR
Hallo zusammen,
wie kann ich in diesem Makro den Ausdruck d Gruß BerndR
Sub Datumsprüfung()
Dim d As Date
On Error GoTo fehler
Beginn:
d = InputBox("Geben Sie das Lieferdatum ein!", _
"Datum eingeben")
If IsDate(d) And d 

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

Betreff
Benutzer
Anzeige
AW: Aktuelles Jahr
28.07.2010 17:11:03
Henrik
Hallo Bernd,
aktuelles Datum mit: date()
aktuelles Jahr mit: year(date())
Henrik
so ?
28.07.2010 17:21:04
Matthias
Hallo
Dim d As String
Bin nicht ganz sicher, aber mE liefert eine Inputbox erstmal einen String,
den Du anschließend auf IsDate prüfen kannst.
If IsDate(d) And Year(d) = Year(Date) Then 'ungetestet
Und es muß eine Routine rein zum "Abbrechen" sonst steigt XL mit einem VBA-Fehler aus
Gruß Matthias
AW: so ?
28.07.2010 18:42:17
BerndR
Hallo Matthias,
das Makro läuft mit der Date-Routine. Nur wenn ich eine Zahlenfolge (nicht Datumsformat) eingebe,
wird ON Error GoTo nicht ausgeführt. Auch die Zeile If Not IsDate(d)... wirkt nicht.
Was mache ich falsch?
Sub Datumsprüfung()
Dim d As Date
On Error GoTo fehler
Beginn:
d = InputBox("Geben Sie das Lieferdatum ein!", _
"Datum eingeben")
If Not IsDate(d) Then GoTo fehler
If IsDate(d) And Year(d)  Year(Date) Then
MsgBox "Nur Eingaben im aktuellen Jahr möglich"
GoTo Beginn
End If
d = d + 14
MsgBox "Das Zahlungsziel ist der: " & d
Exit Sub
fehler:
MsgBox "Sie haben kein gültiges Datum eingegeben!"
GoTo Beginn
End Sub

Anzeige
wird ON Error GoTo nicht ausgeführt
28.07.2010 19:12:44
Matthias
Hallo BerndR
Warum versuchst Du es denn nicht einfach mal mit
Dim d AS String
dann klappt auch On Error GoTo fehler
Gruß Matthias
hier mal der komplette Code ...
28.07.2010 19:31:27
Matthias
Hallo
Option Explicit
Sub Datumsprüfung()
Dim d As String
On Error GoTo fehler
Beginn:
d = InputBox("Geben Sie das Lieferdatum ein!", "Datum eingeben")
If StrPtr(d) = 0 Then Exit Sub 'Abbrechen gedrückt
If Not IsDate(d) Then GoTo fehler
'Abfrage ob es ein Datum ist und ob das Jahr das aktuelle Jahr ist
If IsDate(d) And Year(d)  Year(Date) Then
MsgBox "Nur Eingaben im aktuellen Jahr möglich"
GoTo Beginn
End If
d = CDate(d) + 14 'String(d) in ein Datum umwandeln + 14 Tage
MsgBox "Das Zahlungsziel ist der: " & d
Exit Sub
fehler:
MsgBox "(" & d & ") ist kein gültiges Datum !", vbCritical, "Sie haben kein gültiges Datum  _
eingegeben!"
GoTo Beginn
End Sub
Gruß Matthias
Anzeige
AW: hier mal der komplette Code ...
28.07.2010 20:02:05
BerndR
Hallo Matthias,
bin begeistert, läuft einwandfrei.
Nur die MsgBox unter fehler: brauchte etwas Nachhilfe.
Vielen Dank!
Gruß Bernd
AW: wird ON Error GoTo nicht ausgeführt
28.07.2010 19:51:21
BerndR
Hallo Mattias,
mit d AS String bleibt das Ergebnis (Zahlungsziel) unformatiert.
Kann man die Meldung von VBA "Laufzeitfehler 13" Typen unverträglich unterdrücken?
AW: d = CDate(d) + 14
28.07.2010 20:11:39
BerndR
Hallo Matthias,
bin begeistert, läuft einwandfrei.
Nur die MsgBox unter fehler: brauchte etwas Nachhilfe.
Vielen Dank!
Gruß Bernd
Anzeige

79 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige