Botón en el ribbon que haga sobre la celda activa text(celda activa,"000000") y pegue el resultado como texto

Necesito un botón o macro que si por ejemplo tengo un numero de 3 dígitos que me lo pase a 6 cifras poniendo ceros delante, más o menos lo que hace la función text(celda,"000000"), y luego copiando el resultado como valores en la celda origen como formato texto. Con celdas auxiliares se hacerlo pero necesito que si estoy en una celda o rango, lo haga automáticamente en esa celda rango.

1 respuesta

Respuesta
1

Pon la siguiente macro en los eventos de tu hoja

Private Sub Worksheet_Change(ByVal Target As Range)
'---
'   Por.Dante Amor
'---
    If Not Intersect(Target, Range("C5:E9")) Is Nothing Then
        If Target.Count > 1 Then Exit Sub
        If Not IsNumeric(Target.Value) Then Exit Sub
        Application.EnableEvents = False
        Target.NumberFormat = "@"
        Target.Value = Format(Target.Value, "000000")
        Application.EnableEvents = True
    End If
End Sub

Cambia en la macro "C5:E9", por el rango de celdas que quieres incluir en el cambio.

La macro funciona así, cada vez que pones un número dentro del rango, por ejemplo 5, la macro se activa en automático y te lo convierte a 000005


Sigue las Instrucciones para poner la macro en los eventos de worksheet

  1. Abre tu libro de excel
  2. Para abrir Vba-macros y poder pegar la macro, Presiona Alt + F11
  3. Del lado izquierdo dice: VBAProject, abajo dale doble click a worksheet(tu hoja)
  4. En el panel del lado derecho copia la macro

'S aludos. Dante Amor. Recuerda valorar la respuesta. G racias

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas