Limitar caracteres en las celdas de Excel
En Excel es posible limitar los caracteres de cada celda, opción que en algunos casos puede ser útil ya que algunas aplicaciones requieren que todos los campos tengan un número uniforme de caracteres.
La opción que exponemos aquí, es por medio de una macro, lo que significa que primeo se tiene que escribir y luego ejecutar la macro para que esta elimine los caracteres sobrantes.
Bien, lo que hay que hacer es crear una macro con el siguiente código:
Sub limitartexto()
Dim limite As Object
Range("A1:C100").Select
For Each limite In Selection
limite.Value = Left(limite, 10)
Next
End Sub
Vea: Cómo crear una macro.
En esta macro debe modificar dos líneas para adaptarla a sus necesidades:
Range("A1:C100").Select [Es el rango en el que desea limitar el número de caracteres por celda]
limite.Value = Left(limite, 10) [Es el número máximo de caracteres que puede tener cada celda; en este caso se ha limitado a 10]
Recuerde que una vez haya escrito el texto o contenido, ejecuta la macro para que esta ajuste el número máximo de caracteres por celda, puesto que el ajuste no se hace de forma automática al escribir.


buenas tardes amigos… excelente el aporte. pero ademas de limitarla habra alguna forma de colocar alguna condicion q implique lo siguiente: si los datos introducidos no llenan la cantidad de caracteres q se coloco como limite entonces reemplace los espacios en blacos con ceros?? ejemplo:
1234567890 este seria un valor introducido en la celda con 10 crters
0000007890 y este otro seria introducido con solo 4 caracteres rellenando los espacios sobrantes con ceros.
esto para hacerlo con macro. o agregarlo a una macro ya hecha. gracias
aca la solucion de mi pregunta anterior espero le sirva a alguien mas :) en este caso necesitaba 20caracteres en esa celda y lo q hace es q si los caracteres q introduzco no llegan a los 20 automaticamente se llenen los espacios con ceros a la izquierda :) saludos y bendiciones
Range(“C1″).Select
Do While Not IsEmpty(ActiveCell)
ActiveCell.NumberFormat = “@”
ActiveCell = Format(ActiveCell, “00000000000000000000″)
ActiveCell.Offset(1, 0).Select
Loop
pregunta. como hacer una macro activa durante la grabacion de datos,
necesito que se vallan bloqueando las celdas en la medida que se graban. gracias
Gracias, muy oportuno,claro y concreta tu respuesta. me sirvió mucho.
Gracias =)
Ya se que no fue mi solicitud pero muchas gracias.
gracias me sirvio :) aprendi algo nuevo del gran mundo excel
tambien se puede restringir la cantidad de caracteres en una celda a travez del siguiente menu: Datos / Validacion.
Permitir texto de una longitud específica
En el cuadro Permitir, haga clic en Longitud del texto.
En el cuadro Datos, haga clic en el tipo de restricción que desee. Por ejemplo, para permitir un número máximo de caracteres, haga clic en menor o igual que.
Escriba la longitud máxima, mínima o específica que desee permitir.
Para mas informacion F1.
Muchas gracias!!!!!!!!
Muy buena opción, mucho mas sencilla.
Muchas gracias.