Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
404to408
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
404to408
404to408
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Datums-Format in VBA-Code
Ingo
Guten Tach :)
Ich nutze in einem VBA-Code folgendes:
Print #iFile, Datum & "." & Format(Date, "mm.yyyy")
Nun wird als Ergebnis heute am 01.04.2004 folgendes ausgegeben:
1.04.2004
Ich hätte aber bei Tagen, die nur aus einer Ziffer bestehen (1-9),
gerne noch die Null davor. So dass da dann eben folgendes ausgegeben wird:
01.04.2004
Ist das machbar ?
Und wenn ja, wie ?
Da ich selber leider keine große Ahnung von VBA habe,
würde ich mich riesig freuen, wenn mir da jemand von Euch helfen könntet :)
Gruß
Ingo

8
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Datums-Format in VBA-Code
ChrisL
Hi Ingo
"Datum" ist eine Variabel? Von welchem Typ?
Vielleicht... Format(Datum, "00")?
Gruss
Chris
AW: Datums-Format in VBA-Code
Ingo
Lieber Chris
Public Datum As String
Meintest Du das ?
AW: Datums-Format in VBA-Code
ChrisL
Hi Ingo
Wieso Datum As String. Ist es nicht eine Zahl zwischen 1-31?
Falls ja, dann solltest du als Byte deklarieren und via Format 2-stellig machen.
Gruss
Chris
AW: Datums-Format in VBA-Code
Ingo
Lieber Chris
Vielen lieben Dank erstmal für Deine Hilfe.
Aber leider bin ich ein ziemlicher VBA-Laie :)
Kannst Du mir denn da nochmal helfen ?
Bisher steht da folgendes:
Public Datum As String
Print #iFile, Datum & "." & Format(Date, "mm.yyyy")
Wie müsste es denn nach den von Dir vorgeschlagenen Änderungen ganz genau heissen ?
Gruß
Ingo
Anzeige
AW: Datums-Format in VBA-Code
ChrisL
Hi Ingo
Nochmals, ist Variable Datum eine Zahl von 1-31?
Public Datum As Byte
Print #iFile, Format(Datum, "00") & "." & Format(Date, "mm.yyyy")
Gruss
Chris
DANKE ... genau so klappts ! ... (o.T.)
01.04.2004 17:03:55
Ingo
o.T.
Doch noch ein kleines Problem
Ingo
Lieber Chris
Deine Änderung klappt soweit wunderbar.
Nur habe ich in meiner Arbeitsmappe noch ein UserForm.
Und das will nun nicht mehr richtig funktionieren.
IM Code des UserForm steht unter anderem:

Private Sub CommandButton2_Click()
Artikel_Zurück = TextBox1
Artikel_Vor = TextBox2
Vorrätig = CheckBox1
Einzelstück = CheckBox2
Limitiert = TextBox4
Datum = TextBox5
Unload Me
End Sub

Kann es vielleicht da auch an dem "Datum = TextBox5" liegen ?
Weil ich doch nun die Variable Datum als Byte deklariert habe ?
Oder ist das alles eher Unsinn ?
Leider habe ich ja von VBA nicht viel Ahnung.
Kannst Du mir doch nochmal helfen ?
Würde mich riesig darüber freuen :)
Gruß
Ingo
Anzeige
AW: Doch noch ein kleines Problem
ChrisL
Hi Ingo
Textboxen sind Strings und die Variable hast du inzwischen als Byte deklariert.
Du musst also die Textbox erst als Byte umdeklarieren...
Datum = CByte(TextBox)
..dann sollte es gehen.
Allerdings läuft das Programm in einen Fehler, wenn jemand z.B. ein Text eingibt. Darum brauchst du eine Fehlerroutine, die in etwa so aussehen könnte...
Option Explicit

Private Sub CommandButton1_Click()
Dim Datum As Byte
If IsNumeric(TextBox1) = False Then
MsgBox "TextBox muss nummerisch sein."
TextBox1 = ""
TextBox1.SetFocus
Exit Sub
End If
If TextBox1 = "" Then
MsgBox "Es wurde kein Wert eingetragen."
TextBox1.SetFocus
Exit Sub
End If
On Error Resume Next
Datum = CByte(TextBox1)
If Err.Number = 6 Or CByte(TextBox1) > 31 Or CByte(TextBox1) < 1 Then
MsgBox "Fehler Ganzzahl zwischen 1-31 gesucht."
TextBox1 = ""
TextBox1.SetFocus
Exit Sub
End If
End Sub

Gruss
Chris
Anzeige

320 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige