Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
24.04.2024 17:19:09
Anzeige
Archiv - Navigation
1580to1584
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
Inhaltsverzeichnis

Datum aus Userform

Datum aus Userform
20.09.2017 16:22:32
Tobi
Liebe Excelianer,
ich versuche zwei Datumseinträge aus einer Userform zu bekommen, aus denen anschließend die Differenz berechnet werden soll.
Meine Userform sowohl als auch mein Tabellenblatt heißen "Windmessung". Beim abspielen des Programms kommt es zur Fehlermeldung: "Typen unverträglich" mit Verweis auf die Diff Funktion. Dies passiert selbst wenn man keine Eingabe tätigt. Hier mein Code:
Private Sub
Button_Take_Click()
DatumMessbeginn = Format(Date, "Long Date")
DatumMessende = Format(Date, "Long Date")
DatumMessbeginn = Windmessung.DatumMessbeginn.Value
DatumMessende = Windmessung.DatumMessende.Value
Dim Messzeitraum As Integer
Messzeitraum = DateDiff("m", DatumMessbeginn, DatumMessende)
End Sub
Vielen Dank für eure Hilfe!
Beste Grüße
Tobi

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Datum aus Userform
20.09.2017 17:04:39
Luschi
Hallop Tobi,
man sieht nicht, mit welchen Datentyp Du die Variablen 'DatumMessbeginn' und 'DatumMessende'
definierst hast. Fest steht, das Format(Date, "Long Date") einen String erzeugt!
Dim DatumMessbeginn
DatumMessbeginn = Format(Date, "Long Date")
Mit der ersten Zeile ist 'DatumMessbeginn' vom Typ 'Variant' und mit der 2. Zeile vom Typ
'Variant.String' - also Text!!!
'DateDiff' erwartet aber 2 Datumswerte und damit ist der Crash vorprogrammiert.
Gruß von Luschi
aus klein-Paris
AW: Datum aus Userform
20.09.2017 17:12:27
mmat
Probier mal
Sub Button_Take_Click()
Dim DatumBeginn, DatumEnde, ZeitraumMonate
DatumBeginn = CDate(Windmessung.DatumMessbeginn)
DatumEnde = CDate(Windmessung.DatumMessende)
ZeitraumMonate = DateDiff("m", DatumBeginn, DatumEnde)
End Sub

Anzeige
AW: Datum aus Userform
25.09.2017 15:29:11
Tobi
Danke dir Mat. Hat mich auf jeden Fall ein Stück weiter gebracht. Im Endeffekt habe ich es so gelöst:
Private Sub Button_Take_Click()
'Bedingung das Datumsangaben im Datumsformat angegeben sind
If IsDate(DatumMessbeginn) And IsDate(DatumMessende) Then
DatumMessbeginn = Windmessung.DatumMessbeginn.Value
DatumMessende = Windmessung.DatumMessende.Value
Dim Messzeitraum As Integer
Messzeitraum = DateDiff("m", DatumMessbeginn, DatumMessende)
End Sub

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige