............ Foro Excel
Si no lo has hecho aún: REGISTRATE!!!

SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Ver el tema anterior Ver el tema siguiente Ir abajo

SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por Sigfrido Del Rio el Vie Jul 23, 2010 11:55 pm

Sub reorganizar_todo_version_1()
'*********************************************************************
'Tenemos que situarnos en la primera celda donde tengamos los datos a reorganizar
'Supondremos que es la celda A1
'*********************************************************************
Range("A1").Select
'Ocultamos el procedimiento para que no se vea en pantalla
'nada de lo que hacemos
Application.ScreenUpdating = False
'Mientras encontremos datos en la fila en cuestión,
'que ejecute el macro
Do While Not IsEmpty(ActiveCell)
'Primero nos fijaremos en qué celda estamos,
'para volver a ella una vez arreglada la fila
dondeestoy = ActiveCell.Address
'Descomponemos la cadena, en subcadenas,
'para lo cual indicamos el delimitador " ", aunque
'por defecto, podríamos haberlo omitido, pues es ese mismo (espacio)
'ESTA LINEA LA PONGO PARA QUITAR MAS DE UN ESPACIO ENTRE PALABRA
ActiveCell.Value = WorksheetFunction.Trim(ActiveCell.Value)
'MsgBox ActiveCell
datos = Split(ActiveCell, " ")
For i = 0 To UBound(datos)
'ponemos cada dato del array, en una columna
ActiveCell = datos(i)
'nos desplazamos a la columna adyacente (de la derecha)
ActiveCell.Offset(0, 1).Select
Next 'Seguimos con el bucle
'Volvemos donde estábamos inicialmente
Range(dondeestoy).Select
'pasamos a la fila siguiente, y volvemos a recorrer el bucle
ActiveCell.Offset(1, 0).Select
Loop
'Mostramos todo de nuevo
Application.ScreenUpdating = True
End Sub

Sigfrido Del Rio

Masculino Cantidad de envíos : 3
Edad : 58
Ciudad - Pais : México
Version de Excel : 2007
Fecha de inscripción : 06/06/2010

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por GalileoGali el Sáb Jul 24, 2010 8:27 am

Sigfrido: gracias por el aporte!!!! Si bien hay cosas que podrían evitarse y otras como definir variables que podrían haberse hecho, constituye una buena ayuda particularmente por las glosas y comentarios explicativos que agregaste al los distintos pasos del procedimiento, con lo cual se veran beneficiados muchos que se encuentran aprendiendo VBA.

_________________
GalileoGali
M.A.P. 2010-2013
Microsoft Active Professional
avatar
GalileoGali
Admin

Masculino Cantidad de envíos : 1962
Edad : 61
Ciudad - Pais : QUIROGA, Argentina
Version de Excel : 2000-2003-2007-2010
Fecha de inscripción : 24/01/2008

http://excelgali.mejorforo.net

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por dya8378x1d el Sáb Jul 24, 2010 10:25 am

Buen dia,
Es un excelente aporte, claro para los principiantes como vos. Gracias

dya8378x1d

Masculino Cantidad de envíos : 11
Edad : 34
Ciudad - Pais : mexico
Version de Excel : xp
Fecha de inscripción : 10/07/2009

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por moises melgar el Sáb Jul 24, 2010 11:12 am

Muy buen aporte
eso mismo estaba realizando pero sin macros pero lo malo es que separa solo un numero limitado de palabras por que entre mas palabras existan mas compleja es el calculo
aqui le dejo el archivo seguro les servira de algo la utilizacion de las formulas y el mecanismo que use para esto

exito al foro
[Tienes que estar registrado y conectado para ver este vínculo]
avatar
moises melgar
Jr_Moderator

Masculino Cantidad de envíos : 550
Edad : 28
Ciudad - Pais : Coatzacoalcos - Mexico
Version de Excel : 2007 - 2010
Fecha de inscripción : 25/05/2010

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por GalileoGali el Sáb Jul 24, 2010 12:24 pm

Algunas alternativas para gran Numero de palabras

Hoja1

 ABC
4 En Europa no se consiguen nísperos ni se consiguen tantas otras cosas 
5  
6  En Europa no se consiguen nísperos ni se consiguen tantas otras cosas
73EnEuropa no se consiguen nísperos ni se consiguen tantas otras cosas
87Europano se consiguen nísperos ni se consiguen tantas otras cosas
Spreadsheet Formulas
CellFormula
C6=ESPACIOS(B4)
A7=HALLAR(" ";ESPACIOS(C6))
B7=IZQUIERDA(C6;A7-1)
C7=ESPACIOS(SUSTITUIR(C6;B7;"";1))
A8=HALLAR(" ";ESPACIOS(C7))
B8=IZQUIERDA(C7;A8-1)
C8=ESPACIOS(SUSTITUIR(C7;B8;"";1))


Excel tables to the web >> [Tienes que estar registrado y conectado para ver este vínculo]




_________________
GalileoGali
M.A.P. 2010-2013
Microsoft Active Professional
avatar
GalileoGali
Admin

Masculino Cantidad de envíos : 1962
Edad : 61
Ciudad - Pais : QUIROGA, Argentina
Version de Excel : 2000-2003-2007-2010
Fecha de inscripción : 24/01/2008

http://excelgali.mejorforo.net

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por GalileoGali el Sáb Jul 24, 2010 1:34 pm

aca va el que doy en llamar Método magistral.....
EN $C$6 esta la celda conteniendo la frase
Hoja1

 J
6En
7Europa
8no
9se
10consiguen
11nísperos
12ni
13se
14consiguen
15tantas
16otras
17cosas
Spreadsheet Formulas
CellFormula
J6=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q1)-1)+1;LARGO($C$6)))
J7=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q2)-1)+1;LARGO($C$6)))
J8=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q3)-1)+1;LARGO($C$6)))
J9=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q4)-1)+1;LARGO($C$6)))
J10=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q5)-1)+1;LARGO($C$6)))
J11=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q6)-1)+1;LARGO($C$6)))
J12=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q7)-1)+1;LARGO($C$6)))
J13=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q8)-1)+1;LARGO($C$6)))
J14=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q9)-1)+1;LARGO($C$6)))
J15=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q10)-1)+1;LARGO($C$6)))
J16=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q11)-1)+1;LARGO($C$6)))
J17=ESPACIOS(EXTRAE(SUSTITUIR($C$6;" ";REPETIR(" ";LARGO($C$6)));LARGO($C$6)*(FILA(Q12)-1)+1;LARGO($C$6)))


Excel tables to the web >> [Tienes que estar registrado y conectado para ver este vínculo]




_________________
GalileoGali
M.A.P. 2010-2013
Microsoft Active Professional
avatar
GalileoGali
Admin

Masculino Cantidad de envíos : 1962
Edad : 61
Ciudad - Pais : QUIROGA, Argentina
Version de Excel : 2000-2003-2007-2010
Fecha de inscripción : 24/01/2008

http://excelgali.mejorforo.net

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por sailepaty el Sáb Jul 24, 2010 9:58 pm

Otra opción,

Sheet1

 ABCD
1    
2  En Europa no se consiguen nísperos ni se consiguen tantas otras cosasEn
3   Europa
4   no
5   se
6   consiguen
7   nísperos
8   ni
9   se
10   consiguen
11   tantas
12   otras
13   cosas
14    
15    
16 D2=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D2)-1);1000)) 
17 D3=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D3)-1);1000)) 
18 D4=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D4)-1);1000)) 
19 D5=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D5)-1);1000)) 
20 D6=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D6)-1);1000)) 
21 D7=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D7)-1);1000)) 
22 D8=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D8)-1);1000)) 
23 D9=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D9)-1);1000)) 
24 D10=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D10)-1);1000)) 
25 D11=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D11)-1);1000)) 
26 D12=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D12)-1);1000)) 
27 D13=ESPACIOS(EXTRAE(SUSTITUIR($B$2;" ";REPETIR(" ";1000));1+1000*(FILAS(D$2:D13)-1);1000)) 
28    


Excel tables to the web >> [Tienes que estar registrado y conectado para ver este vínculo]




Saludos
avatar
sailepaty
Moderador
Moderador

Masculino Cantidad de envíos : 135
Edad : 54
Ciudad - Pais : Dallas, TX
Version de Excel : 2007 y 2010
Fecha de inscripción : 04/03/2008

Volver arriba Ir abajo

Re: SEPARAR PALABRAS EN COLUMNA QUITANDO ESPACIOS EN BLANCO

Mensaje por Contenido patrocinado


Contenido patrocinado


Volver arriba Ir abajo

Ver el tema anterior Ver el tema siguiente Volver arriba


 
Permisos de este foro:
No puedes responder a temas en este foro.