viernes, 5 de febrero de 2016

Ingresar fechas en un Textbox en un formulario de VBA


Hace unos días me pidieron que en un formulario sea mas sencillo ingresar las fechas. Una opción era agregar un objeto que se conoce como DTPicker (DateTimePicker); pero personalmente no me gusta usar ese objeto, pues en ciertas computadoras genera conflicto.
Ante esto, con la intención de cumplir con el requerimiento de mi cliente, encontré el siguiente código:

Private Sub TextBox1_Change()

  largo_entrada = Len(Me.TextBox1)

  Select Case largo_entrada
      Case 2
          Me.TextBox1.Value = Me.TextBox1.Value & "/"
      Case 5
          Me.TextBox1.Value = Me.TextBox1.Value & "/"
  End Select

End Sub

Al cliente le encantó, pues lo que hace este código es colocar los / automáticamente, es decir, luego que el usuario colocó los primeros 2 dígitos del día, la macro coloca solo el / y luego cuando coloca los siguientes 2 dígitos correspondiente al mes, la macro nuevamente coloca el /.

Espero que les sirva: