VBA Userform Textbox Date Format

pure vito

Board Regular
Joined
Oct 7, 2021
Messages
180
Office Version
  1. 365
Platform
  1. Windows
Hi All,

I have an issue I have not been able to resolve with the properties of the textboxes alone, within my userform some of the textboxes are populated with dates from a sheet, the format of these dates in the sheet is DD/MM/YYYY
but when the textboxes in the userform are populated with these dates they show as MM/DD/YYYY, can anyone help correct this format please,

Thanks in advance,

Below is the full code and below this the code populating the date textboxes


VBA Code:
Private Sub resetadd_Click()
    Dim errMsg      As String
    On Error GoTo errHandler
    'Stage 1
    errMsg = "This Name Is Not In The Database. Please Try Again. :D"
    Application.ScreenUpdating = False
    'Sheets("Home").Select
    Sheets("People").Visible = True
    Sheets("People").Select
    Sheets("People").Range("B4") = TextBox1.Value
    Range("C1").Select
    Range(Selection, Selection.End(xlDown)).Select
    Range(Selection, Selection.End(xlToRight)).Select
    Selection.Copy
    Range("C999").Select
    'ActiveSheet.Paste
    Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _
    :=False, Transpose:=False
    startdate.Value = Sheets("People").Range("E1000").Value
    service.Value = Sheets("People").Range("G1000").Value
    undays.Value = Sheets("People").Range("H1000").Value
    lieu.Value = Sheets("People").Range("K1000").Value
    earned.Value = Sheets("People").Range("J1000").Value
    floating.Value = Sheets("People").Range("I1000").Value
    area.Value = Sheets("People").Range("L1000").Value
    pass.Value = Sheets("People").Range("M1000").Value
    ID.Value = Sheets("People").Range("C1000").Value
    orical.Value = Sheets("People").Range("D1000").Value
    myhr.Value = Sheets("People").Range("F1000").Value
    contact.Value = Sheets("People").Range("N1000").Value
    email.Value = Sheets("People").Range("O1000").Value
    p60.Value = Sheets("People").Range("Q1000").Value
    p60c.Value = Sheets("People").Range("S1000").Value
    p60z.Value = Sheets("People").Range("U1000").Value
    longforks.Value = Sheets("People").Range("W1000").Value
    counter.Value = Sheets("People").Range("Y1000").Value
    reach.Value = Sheets("People").Range("AA1000").Value
    flatbed.Value = Sheets("People").Range("AC1000").Value
    bframe.Value = Sheets("People").Range("AE1000").Value
    cframe.Value = Sheets("People").Range("AG1000").Value
    eframe.Value = Sheets("People").Range("AI1000").Value
    phev.Value = Sheets("People").Range("AK1000").Value
    manual.Value = Sheets("People").Range("AM1000").Value
    If Worksheets("People").Range("P1000").Text = "yes" Then
        p60v.Value = True
    Else
        p60v.Value = False
    End If
    If Worksheets("People").Range("R1000").Text = "yes" Then
        p60cv.Value = True
    Else
        p60cv.Value = False
    End If
    If Worksheets("People").Range("T1000").Text = "yes" Then
        p60zv.Value = True
    Else
        p60zv.Value = False
    End If
    If Worksheets("People").Range("V1000").Text = "yes" Then
        longforksv.Value = True
    Else
        longforksv.Value = False
    End If
    If Worksheets("People").Range("X1000").Text = "yes" Then
        counterv.Value = True
    Else
        counterv.Value = False
    End If
    If Worksheets("People").Range("Z1000").Text = "yes" Then
        reachv.Value = True
    Else
        reachv.Value = False
    End If
    If Worksheets("People").Range("AB1000").Text = "yes" Then
        flatbedv.Value = True
    Else
        flatbedv.Value = False
    End If
    If Worksheets("People").Range("AD1000").Text = "yes" Then
        bframev.Value = True
    Else
        bframev.Value = False
    End If
    If Worksheets("People").Range("AF1000").Text = "yes" Then
        cframev.Value = True
    Else
        cframev.Value = False
    End If
    If Worksheets("People").Range("AH1000").Text = "yes" Then
        eframev.Value = True
    Else
        eframev.Value = False
    End If
    If Worksheets("People").Range("AJ1000").Text = "yes" Then
        phevv.Value = True
    Else
        phevv.Value = False
    End If
    If Worksheets("People").Range("AL1000").Text = "yes" Then
        manualv.Value = True
    Else
        manualv.Value = False
    End If
    Range("C800:AZ1200").Select
    Application.CutCopyMode = False
    Selection.ClearContents
    Range("C800").Select
    ActiveSheet.Range("$C$1:$AM$989").AutoFilter Field:=1
    Range("C22").Select
    Selection.End(xlUp).Select
    Sheets("People").Select
    ActiveWindow.SelectedSheets.Visible = False
    'Sheets(LastSheet).Select
    Sheets("Home").Select
    Application.ScreenUpdating = True
    GoTo endProc
errHandler:
    MsgBox errMsg
endProc:
    TextBox1.Value = ""
    TextBox1.SetFocus
    Exit Sub
End Sub


Here are the textboxes populated with dates

VBA Code:
    If Worksheets("People").Range("P1000").Text = "yes" Then
        p60v.Value = True
    Else
        p60v.Value = False
    End If
    If Worksheets("People").Range("R1000").Text = "yes" Then
        p60cv.Value = True
    Else
        p60cv.Value = False
    End If
    If Worksheets("People").Range("T1000").Text = "yes" Then
        p60zv.Value = True
    Else
        p60zv.Value = False
    End If
    If Worksheets("People").Range("V1000").Text = "yes" Then
        longforksv.Value = True
    Else
        longforksv.Value = False
    End If
    If Worksheets("People").Range("X1000").Text = "yes" Then
        counterv.Value = True
    Else
        counterv.Value = False
    End If
    If Worksheets("People").Range("Z1000").Text = "yes" Then
        reachv.Value = True
    Else
        reachv.Value = False
    End If
    If Worksheets("People").Range("AB1000").Text = "yes" Then
        flatbedv.Value = True
    Else
        flatbedv.Value = False
    End If
    If Worksheets("People").Range("AD1000").Text = "yes" Then
        bframev.Value = True
    Else
        bframev.Value = False
    End If
    If Worksheets("People").Range("AF1000").Text = "yes" Then
        cframev.Value = True
    Else
        cframev.Value = False
    End If
    If Worksheets("People").Range("AH1000").Text = "yes" Then
        eframev.Value = True
    Else
        eframev.Value = False
    End If
    If Worksheets("People").Range("AJ1000").Text = "yes" Then
        phevv.Value = True
    Else
        phevv.Value = False
    End If
    If Worksheets("People").Range("AL1000").Text = "yes" Then
        manualv.Value = True
    Else
        manualv.Value = False
    End If
 

Excel Facts

Round to nearest half hour?
Use =MROUND(A2,"0:30") to round to nearest half hour. Use =CEILING(A2,"0:30") to round to next half hour.
May also need to use CDate function as below:
VBA Code:
startdate.Value = CDate(Sheets("People").Range("E1000").Value)
 
Upvote 0
Solution
May also need to use CDate function as below:
VBA Code:
startdate.Value = CDate(Sheets("People").Range("E1000").Value)
Hi Geogiboy, this would be the code that needs to be changed. I'm very much a novice =CDate by adding this in the code would it also need to be added at the top of the code? as String or something like that I have no clue 😬

VBA Code:
    If Worksheets("People").Range("AD1000").Text = "yes" Then
        bframev.Value = True
    Else
        bframev.Value = False
 
Upvote 0
It would be used where the date is passed to the textbox, I assumed that is the snippet I used?

Where the textbox is being populated from the worksheet.
 
Upvote 0
It would be used where the date is passed to the textbox, I assumed that is the snippet I used?

Where the textbox is being populated from the worksheet.
Thanks for taking the time, This code has the corresponding textbox names this is populating the dates,

VBA Code:
    If Worksheets("People").Range("P1000").Text = "yes" Then
        p60v.Value = True
    Else
        p60v.Value = False
    End If
    If Worksheets("People").Range("R1000").Text = "yes" Then
        p60cv.Value = True
    Else
        p60cv.Value = False
    End If
    If Worksheets("People").Range("T1000").Text = "yes" Then
        p60zv.Value = True
    Else
        p60zv.Value = False
    End If
    If Worksheets("People").Range("V1000").Text = "yes" Then
        longforksv.Value = True
    Else
        longforksv.Value = False
    End If
    If Worksheets("People").Range("X1000").Text = "yes" Then
        counterv.Value = True
    Else
        counterv.Value = False
    End If
    If Worksheets("People").Range("Z1000").Text = "yes" Then
        reachv.Value = True
    Else
        reachv.Value = False
    End If
    If Worksheets("People").Range("AB1000").Text = "yes" Then
        flatbedv.Value = True
    Else
        flatbedv.Value = False
    End If
    If Worksheets("People").Range("AD1000").Text = "yes" Then
        bframev.Value = True
    Else
        bframev.Value = False
    End If
    If Worksheets("People").Range("AF1000").Text = "yes" Then
        cframev.Value = True
    Else
        cframev.Value = False
    End If
    If Worksheets("People").Range("AH1000").Text = "yes" Then
        eframev.Value = True
    Else
        eframev.Value = False
    End If
    If Worksheets("People").Range("AJ1000").Text = "yes" Then
        phevv.Value = True
    Else
        phevv.Value = False
    End If
    If Worksheets("People").Range("AL1000").Text = "yes" Then
        manualv.Value = True
    Else
        manualv.Value = False
    End If
 
Upvote 0
That piece of the code is just setting true/ false, the values are being populated to the textboxes from dates on the sheet:

VBA Code:
    startdate.Value = Sheets("People").Range("E1000").Value
    service.Value = Sheets("People").Range("G1000").Value
    undays.Value = Sheets("People").Range("H1000").Value
    lieu.Value = Sheets("People").Range("K1000").Value
 
Upvote 0
How silly of me 😅 hence why I'm here for help 😁 I made these changes however something is'nt working right now it's not giving me an error the VBA just isn't working as normal?

VBA Code:
    startdate.Value = Sheets("People").Range("E1000").Value
    service.Value = Sheets("People").Range("G1000").Value
    undays.Value = Sheets("People").Range("H1000").Value
    lieu.Value = Sheets("People").Range("K1000").Value
    earned.Value = Sheets("People").Range("J1000").Value
    floating.Value = Sheets("People").Range("I1000").Value
    area.Value = Sheets("People").Range("L1000").Value
    pass.Value = Sheets("People").Range("M1000").Value
    ID.Value = Sheets("People").Range("C1000").Value
    orical.Value = Sheets("People").Range("D1000").Value
    myhr.Value = Sheets("People").Range("F1000").Value
    contact.Value = Sheets("People").Range("N1000").Value
    email.Value = Sheets("People").Range("O1000").Value
    p60.Value = CDate(Sheets("People").Range("Q1000").Value)
    p60c.Value = CDate(Sheets("People").Range("S1000").Value)
    p60z.Value = CDate(Sheets("People").Range("U1000").Value)
    longforks.Value = CDate(Sheets("People").Range("W1000").Value)
    counter.Value = CDate(Sheets("People").Range("Y1000").Value)
    reach.Value = CDate(Sheets("People").Range("AA1000").Value)
    flatbed.Value = CDate(Sheets("People").Range("AC1000").Value)
    bframe.Value = CDate(Sheets("People").Range("AE1000").Value)
    cframe.Value = CDate(Sheets("People").Range("AG1000").Value)
    eframe.Value = CDate(Sheets("People").Range("AI1000").Value)
    phev.Value = CDate(Sheets("People").Range("AK1000").Value)
    manual.Value = CDate(Sheets("People").Range("AM1000").Value)
 
Upvote 0
What are you seeing in the textboxes now?

You need to give a little more detail on "the VBA just isn't working as normal?"
 
Upvote 0

Forum statistics

Threads
1,214,810
Messages
6,121,690
Members
449,048
Latest member
81jamesacct

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top