Saltar al contenido

Colocar datos una columna al final de cada una de sus filas

publicado

Buenas tardes a todos, es la primera vez que posteo aqui, aunque he buscado varias cosas, siempre con buenos resultados, pero esta vez no encuentro lo que busco:

Busco colocar, siembre que exista, los datos de la columna A, en la primera celda libre que encuentre de su misma fila:

No soy experto en VBA ni programacion, pero he encontrado una formula que modificandola queda asi:

Sub ttt()

ActiveSheet.Cells(17, 1).Select

Selection.Copy

ActiveSheet.Cells(17, 1).End(xlToRight).Offset(0, 1).Select

Selection.PasteSpecial Paste:=xlPasteValues, Operation:=xlNone, SkipBlanks _

:=False, Transpose:=False

Application.CutCopyMode = False

ActiveSheet.Cells(17, 1).Select

End Sub

De esta manera me busca lo que hay en la fila 17 y me lo coloca en la siguiente celda vacia.

Pero tengo dos problemas.

1) solo me lo hace una vez, la siguiente vez que ejecuto la macro no me vuelve a crear el valor.

2) no se como hacerlo para que me lo haga de toda la columna A, sin tener que cambiar el valor "17" por cada una de las filas.

Muchas gracias anticipadas, y felicidades por el gran foro que habeis creado.

Saludos

Libro2.xls

Featured Replies

publicado

Hola:

Pruebe con esta macro:

Sub ttt()

For x = 2 To Range("A" & Rows.Count).End(xlUp).Row
If Not Trim(Range("A" & x)) = "" Then
Cells(x, Cells(x, Columns.Count).End(xlToLeft).Column).Offset(0, 1) = Range("A" & x)
End If
Next

End Sub


[/CODE]

Saludos

publicado
  • Autor

Ostras, que rapidez y efectividad

!FUNCIONA!

muchas gracias.

Archivado

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