Problema con macro para forzar escritura en mayúsculas

Tengo un problema con una macro que forzá la escritura en mayúsculas. En si la macro si me cumple con su función de convertir todo lo que escribo en mayúsculas pero como tengo celdas para la fecha me la ordena mal. Por ejemplo si escribo 6 jul tendría que poner 6/07/20 pero me la pone 07/06/12 esto nada más me lo hace del 01 al 09 del 10 al 31 si lo ordena bien y cuando quito la macro me escribe bien la fecha. ¿Qué podría hacer? La macro es esta.

Private Sub worksheet_change(ByVal target As Range)
If target.Cells.Count > 1 Or target.HasFormula Then Exit Sub
On Error Resume Next
Application.EnableEvents = False
target.Value = VBA.UCase(target.Value)
Application.EnableEvents = True
On Error GoTo 0

End Sub

1 respuesta

Respuesta
2

Revisa si lo siguiente te ayuda:

Private Sub worksheet_change(ByVal Target As Range)
  Dim c As Range
  '
  On Error GoTo enEvent
  Application.EnableEvents = False
  For Each c In Target
    If Not c.HasFormula And c.Value <> "" Then
      If Not IsNumeric(c.Value) And Not IsDate(c.Value) Then
        c.Value = VBA.UCase(c.Value)
      End If
    End If
  Next
enEvent:
  Application.EnableEvents = True
End Sub

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas