No Dante, no modifique nada, y la variable fec solo esta una vez
Dim valc As String
Dim Sal As String
Dim v_user As String
Dim val_r As String
Dim val_c3 As String
Dim finx As Long 'es la variable que guardará la fila a ocupar
' < Boton Guardar >
Private Sub CommandButton1_Click()
Dim fec As String
' Desproteger la hoja para grabar datos capturados
es_admin = Worksheets("Usuarios2").Range("C2").Value
Sheets("Data").Select
Worksheets("Data").Unprotect CStr(es_admin)
' Pasar Datos capturados y Variables
Sheets("Data").Select
'instruccion original Range("B" & finx) = CDate(TextBox1)
'insruccion alterna Range("B" & finx).Value = Format(CDate(TextBox1.Value), "*MM/DD/YYYY")
fec = Mid(TextBox1, 4, 2) & "/" & Mid(TextBox1, 1, 2) & "/" & Mid(TextBox1, 7, 4)
Range("B" & finx) = CDate(fec)
Range("B" & finx).NumberFormat = "dd/mm/yyyy"
Range("C" & finx) = valc
Range("D" & finx) = Sal
Sheets("Principal").Select
v_user = Worksheets("Principal").Range("J22").Value
Sheets("Data").Select
Range("E" & finx) = v_user
Range("F" & finx) = val_r
Range("G" & finx) = val_c3
MsgBox "Alta exitosa. Actualizando Datos.", vbInformation, "EXCELeINFO"
' Volver a proteger la hoja de datos capturados
es_admin = Worksheets("Usuarios2").Range("C2").Value
Sheets("Data").Select
Worksheets("Data").Protect CStr(es_admin)
Unload Me 'se quedó en última hoja actualizada
End Sub
Private Sub CommandButton2_Click() ' << Rutina para Boton Cancelar >>
Controls("TextBox1") = ""
ComboBox1 = ""
ComboBox2 = ""
ComboBox3 = ""
Unload Me
End Sub
Private Sub ComboBox1_Change()
valc = ComboBox1.Value
valcc = CStr(valc)
Sal = Application.WorksheetFunction.VLookup(valcc, Usuarios2.Range("N2:O5"), 2, False)
End Sub
Private Sub ComboBox2_Change()
val_r = ComboBox2.Value
End Sub
Private Sub ComboBox3_Change()
val_c3 = ComboBox3.Value
End Sub
Private Sub UserForm_Initialize()
' Busca la ultima fila y determina la siguiente vacia para asignar variables
' Impedir que se vea el movimiento de hojas
Application.ScreenUpdating = False
Sheets("Data").Select
finx = Sheets("Data").Range("B" & Rows.Count).End(xlUp).Row + 1
TextBox1.Value = Format(Date, "dd/mm/yyyy")
End Sub
Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer)
'regresa a hoja Menu
Sheets("Principal").Select
End Sub
Private Sub TextBox1_Change()
End Sub