Saltar al contenido

Quitar espacios en blanco de toda la hoja


magniflow

Recommended Posts

publicado

Quitar espacios de cada celda de toda la hoja

Buenas tardes amigos

Por favor quisiera que me ayuden, busque en google pero no he encontrado alguien que me pueda ayudar.

Quiero una macro o algún truco quizás para quitar los espacios de varias columnas, ya que lo que tengo que hacer es agregar una columna al costado y poner =espacios(celda) y jalarlo para abajo. y asi para todas las columnas para que son muchas columnas y todas la mayoría están con espacios al final.

publicado

Acabo de verificar, y me quita los espacios intermedios de las palabras, para ser más especifico, mis celdas tienen una cantidad razonable de espacios a la derecha "Pedro Villa ", quiero que me quede "Pedro Villa", con la macro que me pasaste queda "PedroVilla".

Gracias de antemano

publicado

Este método creo que lo he visto en el foro, siento no recordar el hilo.

Sub LimpiarEspacios()
Dim RangoDatos As String

RangoDatos = ActiveSheet.UsedRange.Address
Range(RangoDatos).Value = Evaluate("=INDEX(TRIM(" & RangoDatos & "),0)")
End Sub[/HTML]

Si tienes fórmulas debes restringir al rango sólo a la celdas que contienen texto y no te servirá el procedimiento anterior.

  • 3 weeks later...
publicado

Similar al ya sugerido:

[SIZE=2]Sub test()
With ActiveSheet.UsedRange
.Value = Evaluate("if(row(" & .Address & "),clean(trim(" & .Address & ")))")
End With
End Sub[/SIZE][/CODE]

Este es mas general y amplio:

[CODE]Sub [B][COLOR=#ff0000]TrimALL[/COLOR][/B]()
'David McRitchie 2000-07-03 mod 2000-08-16 join.htm
Application.ScreenUpdating = False
Application.Calculation = xlCalculationManual
Dim cell As Range
'Also Treat CHR 0160, as a space (CHR 032)
Selection.Replace What:=Chr(160), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Do Same with carriage return (Alt-Enter)
'Also Treat CHR 010, as a space (CHR 032)
Selection.Replace What:=Chr(10), Replacement:=Chr(32), _
LookAt:=xlPart, SearchOrder:=xlByRows, MatchCase:=False
'Trim in Excel removes extra internal spaces, VBA does not
On Error Resume Next 'in case no text cells in selection
For Each cell In Intersect(Selection, _
Selection.SpecialCells(xlConstants, xlTextValues))
cell.Value = Application.Trim(cell.Value)
Next cell
On Error GoTo 0
Application.Calculation = xlCalculationAutomatic
Application.ScreenUpdating = True
End Sub[/CODE]

publicado

Hola.

Otra mas



Application.ScreenUpdating = False
For Each celda In ActiveSheet.UsedRange
celda.Value = RTrim(celda.Value)
Next

[/CODE]

Archivado

Este tema está ahora archivado y está cerrado a más respuestas.

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.