< návrat zpět

MS Excel


Téma: Vlastná funkcia na formát dátumu v textboxe rss

Zaslal/a 29.5.2023 14:13

Zdravim,

V userforme mám zopár textboxov v ktorých často zadávam dátumy. Aby to bolo rýchlejšie zadávam iba čísla (napr. 010123 alebo 01012023 a používam tento kód na zformatovanie.

Private Sub txtDatumOd_AfterUpdate()

On Error GoTo format


If Len(txtDatumOd) = 6 Then
txtDatumOd.Text = format(CDate(format$(txtDatumOd.Text, "##-##-##")), "dd.mm.yyyy")
ElseIf Len(txtDatumOd) = 8 Then
txtDatumOd.Text = format(CDate(format$(txtDatumOd.Text, "##-##-####")), "dd.mm.yyyy")
End If

format: txtDatumOd.Text = format(txtDatumOd.Text, "dd.mm.yyyy")

End Sub


Abyb som nemusel tento kód upravovať v každom textboxe rád by som z tohto kódu vytvoril funkciu ktoru by som zavolal priamo z AfterUpdate jednotlivých textboxov.

Viete mi s tým prosím pomôcť?

Zaslat odpověď >

#054959
avatar
Problém vyriešený cez CHATGPT 1

Function FormatDatumInput(dateString As String) As String
If Len(dateString) = 8 Then
Dim day As Integer
Dim month As Integer
Dim year As Integer

day = Val(Mid(dateString, 1, 2))
month = Val(Mid(dateString, 3, 2))
year = Val(Mid(dateString, 5, 4))

' Príklad konverzie dátumu v tvare DDMMYYYY na DD.MM.YYYY
FormatDatumInput = Format(DateSerial(year, month, day), "dd.mm.yyyy")
ElseIf Len(dateString) = 6 Then

day = Val(Mid(dateString, 1, 2))
month = Val(Mid(dateString, 3, 2))
year = Val(Mid(dateString, 5, 2))

' Príklad konverzie dátumu v tvare DDMMYY na DD.MM.YYYY
FormatDatumInput = Format(DateSerial(year, month, day), "dd.mm.yyyy")
Else
FormatDatumInput = Format(dateString, "dd.mm.yyyy")
End If
End Function
citovat
#054960
Stalker
Něco k inspiraci: https://www.mrexcel.com/board/threads/date-input-mask-applying-a-watermark-to-textbox.1231537/citovat

Uživatelské menu

Nejste přihlášen(a)
avatar\n

Menu

Formulář Faktura

Formulář Faktura IV

Oblíbený formulář Faktura byl vylepšen a rozšířen.
Více se dočtete zde.

Helios iNuvio

Používáte podnikový systém Helios iNuvio? Potřebujete pomoci se správou nebo vyvinout SQL proceduru? Více informací naleznete na stránce Helios iNuvio.

On-line nástroje