Microsoft Excel

Herbers Excel/VBA-Archiv

Informationen und Beispiele zum Thema TextBox
BildScreenshot zu TextBox TextBox-Seite mit Beispielarbeitsmappe aufrufen

VBA Month View1 Datum in Tabelle übernehmen

Betrifft: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 10:17:05

Guten Morgen zusammen,

nachdem ich mit eurer Hilfe mein erstes kleines Programm in VBA geschrieben habe, welches auch super funktioniert habe ich noch ein letztes Problem.

Ich rufe über einen Command Button eine UserForm auf und trage in dieser UserForn via Month View1 ein Datum in ein Textfeld ein, welches dann zusammen den anderen Einträgen in eine Excel Tabelle eingetragen wird. Das klappt soweit auch super, nur wird das Datum nicht als Datum in meine Liste eingetragen, sondern als Text :-(

Ich habe schon sehr ausführlich die Google Suche genutzt, aber leider nicht weitergekommen.

Vielleicht hat ja von den VBA Profis hier eine Idee.

Vielen Dank im voraus

Gruß
Thomas

  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Steve
Geschrieben am: 14.03.2016 10:37:19

Hallo Thomas,

dafür gibt es die Funktion CDate(). Dass dein Datum ein Text ist, liegt logischerweise daran dass du eine TextBox hast.
Frei übersetzt heist CDate() nix anderes als konvertiere in Datum. Das nutzt du in dem Moment wo dein Datum in die Liste übertragen wird, z.B.:

Range("A1") = CDate(TextBox1)
Was übrigens auch sehr schön ist:
Private Sub TextBox1_Afterupdate()
TextBox1 = Format(TextBox1, "DD.MM.YYYY")
End Sub

Damit kannst du dein Datum in Kurzform eingeben, z.B. "14-3-16" oder 14.3." bzw. was halt normal mit Excel möglich ist und sobald du die TextBox verlässt springt es dir in das gewünschte Format (hier 14.03.2016).

lg Steve


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 11:49:29

Hallo Steve,

danke für deine Antwort den Befehl mit dem "Private Sub" habe ich schon ausprobiert,hat aber nicht funktioniert...warum auch immer, wahrscheinlich mein Fehler.
Ich habe dir mal den Code für das einfügen con Datum bzw. Auftragsnummer aufgeschrieben. Der 2 Code ist, wie du sicherlich auch siehst, für das eintragen des MonthView in die TextBox.

Wo soll ich das CDate einfügen?

vielen Dank für deine Hilfe.

' Wenn Monteur 1 nicht leer, dann Auftragsnummer und Datum hinzufügen
If ComboBox2.Value <> "" Then
Worksheets("Stundenerfassung").Range("B" & Worksheets("Stundenerfassung").Cells(Rows.Count, "B").End(xlUp).Row + _
1) = ComboBox1.Value
Worksheets("Stundenerfassung").Range("C" & Worksheets("Stundenerfassung").Cells(Rows.Count, "C").End(xlUp).Row + _
1) = TextBox2.Value



Private Sub MonthView1_SelChange(ByVal StartDate As Date, ByVal EndDate As Date, Cancel As  _
Boolean)
    TextBox2.Value = MonthView1.Value
End Sub
Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Steve
Geschrieben am: 14.03.2016 12:00:15

Hallo Thomas,

achso stimmt, du lässt das Datum ja über MonthView einfügen, daher vergiss den letzten Teil meiner vorherigen Aussage.

Zu deinem Code:

If ComboBox2.Value <> "" Then
Worksheets("Stundenerfassung").Range("B" & Worksheets("Stundenerfassung").Cells(Rows.Count, "B").End(xlUp).Row + _
1) = ComboBox1.Value
Worksheets("Stundenerfassung").Range("C" & Worksheets("Stundenerfassung").Cells(Rows.Count, "C").End(xlUp).Row + _
1) = CDate(TextBox2.Value)

Ist in der ComboBox1 auch ein Datum hinterlegt? Wenn ja, solltest du den Teil nach dem "=" ebenfalls mit CDate() versehen.

lg Steve


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 12:11:52

Hallo Steve,

vieeeelen Dank, läuft super.


Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 16:29:45

Hallo Steve.....darf ich dich vielleicht nochmals um einen Gefallen Bitten?

Ich habe das gleiche Problem mit einigen TextBoxen, bei denen der Wert als Zahl ausgeben werden soll.
Das hatte ich gelöst mit:
1)=Textbox1.Value *1
funktioniert auch super solange in jeder TextBox was steht. Leider kann es vorkommen, dass man nur 1 von 3 TextBoxen benötigt und dann kommt eine Fehlermeldung.

Viele Grüße
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Steve
Geschrieben am: 14.03.2016 16:56:04

Hallo Thomas,

dazu gibt es zwei Lösungen. Deine Variante funktioniert ist clever, aber auch dafür gibt es eine Konvertier-Funktion, nämlich CLng(). Bei der besteht aber genau das gleiche Problem, von daher lass es so wie es ist.
Ich würde das Problem per Wenn-Bedingung lösen:

If TextBox1.Value <> "" Then
Sheets("XYZ").Range("A1").Value = TextBox1.Value * 1
End If
Nur wenn die TextBox nicht leer ist ("" entspricht Leerstring), dann darf er das in die Zelle schreiben.

lg Steve


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 17:23:04

Hallo Steve....läuft, nochmals herzlichen Dank.


Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Rudi Maintaire
Geschrieben am: 14.03.2016 17:16:34

Hallo,
if isnumeric(textbox1) then....

Gruß
Rudi


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 17:26:46

Hallo Rudi,
danke für dein Feedback. Habe es schon mit Steve`s code hinbekommen.

nochmals Danke an das tolle Forum.

Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 17:26:56

Hallo Rudi,
danke für dein Feedback. Habe es schon mit Steve`s code hinbekommen.

nochmals Danke an das tolle Forum.

Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 17:26:58

Hallo Rudi,
danke für dein Feedback. Habe es schon mit Steve`s code hinbekommen.

nochmals Danke an das tolle Forum.

Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Thomas Konradt
Geschrieben am: 14.03.2016 17:27:50

Hallo Rudi,
danke für dein Feedback.
Habe es schon mit Steves code hinbekommen.

nochmals Danke an das tolle Forum.

Gruß
Thomas


  

Betrifft: AW: VBA Month View1 Datum in Tabelle übernehmen von: Rudi Maintaire
Geschrieben am: 14.03.2016 17:16:37

Hallo,
if isnumeric(textbox1) then....

Gruß
Rudi


 

Beiträge aus den Excel-Beispielen zum Thema "VBA Month View1 Datum in Tabelle übernehmen"