Betrifft: Datum und TextBox
von: abu
Hallo Zusammen,
kann mir vllt. jemand auf die Spruenge helfen?
Habe eine Userform mit der ich unter anderem eine TextBox fuer ein Datum benutze.
Folgenden Code habe ich dafuer.
Um es vom blatt in die Userform zu holen hab ich diesen Code:
.TextBox45.Value = Sheets("Customer complaints").Cells(Target.Row, 8).Value
Um es zureuck zu schreiben diesen:
.Cells(CInt(Me.Tag), 8).Value = CDate(TextBox45)
Als Beispiel nehmen wir das Datum 07-01-2010
lade ich die Userform zeigt er mir 07-01-2010 an,
schliesse ich die Userform zeigt er im Blatt 07-01-2010 an,
lade ich die Userform erneut zeigt er mir 01-07-2010 an,
schliesse ich die Userform wieder zeigt er 01-07-2010an
mach ich das selbe noch mal wird es wieder richtig angezeigt, im Blatt auch und das geht immer so weiter
Will ich diesen Code aendern:
.TextBox45.Value = Sheets("Customer complaints").Cells(Target.Row, 8).Value
in
.CDate(TextBox45) = ....
bleibt er immer haengen.
Kann mir jemand bitte helfen?
Gruss abu
Betrifft: versuche es mal so...
von: Tino
Geschrieben am: 07.01.2010 11:35:08
Hallo,
, habe ich jetzt nicht getestet.
Lesen in UF
.TextBox45.Value = Format(CDate(Sheets("Customer complaints").Cells(Target.Row, 8).Value2), "dd-mm-yyyy")
Schreiben in die Zelle
.Cells(CLng(Me.Tag), 8).Value = DateValue(Replace(TextBox45, "-", "."))
Gruß Tino
Betrifft: AW: versuche es mal so...
von: abu
Betrifft: Du schreibst doch...
von: Tino
Geschrieben am: 07.01.2010 12:50:21
Hallo,
das in der Textbox "07-01-2010" steht und
diese "-" ersetze ich durch einen Punkt.
Ist aber auch egal, es läuft ja jetzt bei Dir.
Gruß Tino
Betrifft: AW: Du schreibst doch...
von: abu
Geschrieben am: 07.01.2010 13:15:55
oder sorum, egal klappt
danke.
Betrifft: AW: Du schreibst doch...
von: abu
Geschrieben am: 07.01.2010 14:11:45
Muss doch noch mal nachfragen: Wenn jemand vergisst ein Datum einzutragen bleibt er haengen, sollte aber dann nicht passieren sondern einfach leer bleiben. Gibts da auch ne Loesung fuer?
Gruss abu
Betrifft: AW: Du schreibst doch...
von: Tino
With Sheets("Customer complaints").Cells(Target.Row, 8)
If .Value <> "" And IsDate(.Value) Then
.TextBox45.Value = Format(CDate(.Value2), "dd-mm-yyyy")
Else
.TextBox45.Value = ""
End If
End With
Von der Textbox in die Zelle machst Du auch eine Abfrage, eben wie zuvor schon mal beschrieben.
Betrifft: AW: Du schreibst doch...
von: abu
Betrifft: AW: Du schreibst doch...
von: abu
Geschrieben am: 07.01.2010 15:50:15
sorry in der Zeile
.TextBox45.Value = Format(CDate(.Value2), "dd-mm-yyyy")
Betrifft: die Userform fehlt noch...
von: Tino
Geschrieben am: 07.01.2010 16:04:33
Hallo,
entweder einfach
TextBox45.Value = ...
oder
Me.TextBox45.Value = ...
oder
Userform1.TextBox45.Value = ....
Gruß Tino
Betrifft: AW: die Userform fehlt noch...
von: abu
Betrifft: AW: die Userform fehlt noch...
von: Tino
Geschrieben am: 07.01.2010 16:55:17
Hallo,
teste mal
With Sheets("Customer complaints").Cells(CLng(Me.Tag), 8)
If Ausgabe.TextBox45.Value <> "" Then
.Cells(CLng(Me.Tag), 8).Value = DateValue(Replace(Ausgabe.TextBox45.Value, "-", "."))
Else
.Cells(CLng(Me.Tag), 8).Value = ""
End If
End With
Gruß Tino
Betrifft: AW: die Userform fehlt noch...
von: abu
Betrifft: hier ein einfaches Beispiel...
von: Tino
Geschrieben am: 07.01.2010 17:27:44
Hallo,
https://www.herber.de/bbs/user/67050.xls
Gruß Tino
Betrifft: AW: hier ein einfaches Beispiel...
von: abu
Geschrieben am: 08.01.2010 08:42:39
Guten Morgen Tino,
dein Beispiel funtioniert leider auch nicht...
Gruss abu
Betrifft: bei funktioniert es unter xl2007 u. 2003
von: Tino
Geschrieben am: 08.01.2010 09:19:52
Hallo,
was soll ich dazu nun sagen, habe es soeben unter xl2003 nochmal getestet und es funktioniert.
Gruß Tino
Betrifft: AW: bei funktioniert es unter xl2007 u. 2003
von: abu
Geschrieben am: 08.01.2010 09:26:29
Hallo,
habe auch 2003 und egal was ich probiere, bleibt er im Sub SchreibeDatum in der 3 Zeile stecken mit der Fehlermeldung Type missmatch.
Selbst wenn ich nichts am Datum aendere und es wie es war ins sheet zurueck schreiben alssen will.
Gruss
abu
Betrifft: AW: bei funktioniert es unter xl2007 u. 2003
von: Tino
Betrifft: AW: bei funktioniert es unter xl2007 u. 2003
von: abu
Betrifft: Ms Forms 2.0 wird automatisch gesetzt.
von: Tino
Geschrieben am: 08.01.2010 10:48:16
Hallo,
wenn Du eine UF erstellst wird dieser Verweis automatisch gesetzt,
versuche es mal in einer neuen Excel- Datei.
Sonst müsstest Du dich an Deinen IT- Beauftragten wenden oder einen
Admin der Dein Excel nochmal Installiert.
Gruß Tino
Betrifft: AW: Ms Forms 2.0 wird automatisch gesetzt.
von: abu
Betrifft: AW: Ms Forms 2.0 wird automatisch gesetzt.
von: Tino
Geschrieben am: 08.01.2010 11:21:12
Hallo,
die Zeilen müssten so aussehen.
With Sheets("Customer complaints").Cells(CLng(Me.Tag), 8)
If IsDate(Ausgabe.TextBox45.Value) Then
.Value = DateValue(Ausgabe.TextBox45.Value)
Else
.Value = ""
End If
End With
Gruß Tino
Betrifft: AW: Ms Forms 2.0 wird automatisch gesetzt.
von: abu