Macro para copiar celdas

25/02/2009 - 14:38 por Martín | Informe spam
hola,

tengo el siguiente código que se me generó guardando una macro que me
interesa:

////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////
Range("A2:A50").Select
Selection.Copy
Range("B2").Select
ActiveSheet.Paste
Selection.Replace What:="001", Replacement:="002", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False


Application.CutCopyMode = False
Selection.Copy
Range("C2").Select **********
ActiveSheet.Paste
Selection.Replace What:="002", Replacement:="003", LookAt:=xlPart, _
SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
ReplaceFormat:=False
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////
//////////

lo que hace es en la columna A tengo determinados datos, de los que me
interesa poner en la columna B los mismos pero reemplazando 001 por 002, asi
sucesivamente para la columna C 003, D004, etc.etc...


quiero armar el código para ponerlo en un botón,

puedo copiarlo muchas veces e ir cambiando el "C2" por "D2" "E2", ETC..y los
002, por 003 004, etc...

pero sé que con un for lo arreglo en una linea, el problema es como puedo
iterar con las columnas?? es decir en la linea que le puse el ********

tendría que poner algo como range(X).select y un for desde B2 hasta Z2?¿
 

Leer las respuestas

#1 Martín
25/02/2009 - 15:20 | Informe spam
y...ponele que quiero 50 valores,

de todas maneras sería un parámetro del FOR

osea algo como "for celda= a1 to z1"
vario el z1 en el código y listo

el formato de celda es General
no es fórmula, ni nro, ni nada, ya escribí el código de como reemplazo los
001 por 002, etc

la única duda que tengo es como me muevo en el for, hay una variable de tipo
celda?
y a la vez que me muevo obviamente incremento en 1 el valor que quiero
reemplazar...

saludos,

gracias!
"Héctor Miguel" escribió en el mensaje
news:
hola, Martín !

> tengo el siguiente codigo que se me genero guardando una macro que me


interesa: (...)
> ... en la columna A tengo determinados datos, de los que me interesa


poner en la columna B los mismos
> pero reemplazando 001 por 002, asi sucesivamente para la columna C 003,


D004, etc.etc...
> quiero armar el codigo para ponerlo en un boton
> puedo copiarlo muchas veces e ir cambiando el "C2" por "D2" "E2", ETC..y


los 002, por 003 004, etc...
> pero se que con un for lo arreglo en una linea, el problema es como


puedo iterar con las columnas??
> es decir en la linea que le puse el ********
> tendria que poner algo como range(X).select y un for desde B2 hasta


Z2?

- cual seria el alcance del "etc. etc. etc." ???
(es decir, colA1, colB2, colC, ... hasta donde ?)

- cual es el contenido de las celdas en el rango (datos o formulas) ???

comentas (si hubiera) mas detalles "en el tintero" ?
saludos,
hector.

__ el codigo expuesto __
> Range("A2:A50").Select
> Selection.Copy
> Range("B2").Select
> ActiveSheet.Paste
> Selection.Replace What:="001", Replacement:="002", LookAt:=xlPart, _
> SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
> ReplaceFormat:=False
> Application.CutCopyMode = False
> Selection.Copy
> Range("C2").Select **********
> ActiveSheet.Paste
> Selection.Replace What:="002", Replacement:="003", LookAt:=xlPart, _
> SearchOrder:=xlByRows, MatchCase:=False, SearchFormat:=False, _
> ReplaceFormat:=False



Preguntas similares