Tema Objeto Range

10/11/2005 - 19:12 por César G. | Informe spam
Saludos a tod@s

Espero que esten bien, bueno, la pregunta es la siguiente

Tengo que pegar varios datos en una plantilla desde un documento principal,
el tema es que al intentar hacer el famosisimo "Copy - Paste " me genera una
serie de errores, Aqui les mando el codigo de la macro que utilizó para
saber si pueden, por favor, explicarme como tengo que declarar el objeto
para poder manejar rangos de celdas y poder seleccionarlos

Dim Plantilla As Workbook
Dim Tabular As Worksheet

Set Plantilla = Application.Workbooks.Add(Ruta)

'Set Tabular = Application.Windows("Francia.xls")
Set Tabular = Application.Workbooks("Francia.xls").Worksheets(1)


For x = 1 To 9
Tabular.Activate

'Tabular.Range(Cells(121, x + 1), Cells(124, x + 1)).Select


'Tabular.Worksheets("Francia").Range(Cells(121, x + 1), Cells(124, x +
1)).Select
'Tabular.Range(Cells(121, x + 1), Cells(124, x + 1)).Select

'Range(Cells(121, x + 1), Cells(124, x + 1)).Select


Cualquiera de estos metodos para seleccionar el rango de B121:B124 me
devolvia los errores 400 o bien, el error 1004 " Error en el método Range de
Objeto '_Worksheet'", ... en fin,

aqui es donde intento pegar la selección,

Selection.Copy
Plantilla.Worksheets(2).Activate

Cells(8, 3).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=
_
False, Transpose:=True
Next x

El "metodo" que me funcionó fue, el siguiente

Tabular.Range("B" & 121 & ":B" & 124).Select

Aunque me gustaría saber cual es la forma correcta de hacer esta seleccion
con la forma
range(cells(row, col), cells(row, col)).select

Agradeciendo de antemano su atención a este mensaje, espero sus comentarios

César Galicia
Soporte Técnico
TNS-Gallup
 

Leer las respuestas

#1 Alejandro Garrammone
11/11/2005 - 03:47 | Informe spam
una forma básica sería la siguiente:

Sheets("Sheet1").Select
Range("B121:B124").Select
Selection.Copy
Sheets("Sheet2").Select
Range("B121:B124").Select
ActiveSheet.Paste
Application.CutCopyMode = False

si quieres concatenar cosas en una variable para utilizarla dentro de Range
lo puedes hacer con "&".

Espero que te sirva,

Alejandro.

"César G." escribió en el mensaje
news:Oh30$

Saludos a

Espero que esten bien, bueno, la pregunta es la siguiente

Tengo que pegar varios datos en una plantilla desde un documento
principal, el tema es que al intentar hacer el famosisimo "Copy - Paste "
me genera una serie de errores, Aqui les mando el codigo de la macro que
utilizó para saber si pueden, por favor, explicarme como tengo que
declarar el objeto para poder manejar rangos de celdas y poder
seleccionarlos

Dim Plantilla As Workbook
Dim Tabular As Worksheet

Set Plantilla = Application.Workbooks.Add(Ruta)

'Set Tabular = Application.Windows("Francia.xls")
Set Tabular = Application.Workbooks("Francia.xls").Worksheets(1)


For x = 1 To 9
Tabular.Activate

'Tabular.Range(Cells(121, x + 1), Cells(124, x + 1)).Select


'Tabular.Worksheets("Francia").Range(Cells(121, x + 1), Cells(124, x +
1)).Select
'Tabular.Range(Cells(121, x + 1), Cells(124, x + 1)).Select

'Range(Cells(121, x + 1), Cells(124, x + 1)).Select


Cualquiera de estos metodos para seleccionar el rango de B121:B124 me
devolvia los errores 400 o bien, el error 1004 " Error en el método Range
de Objeto '_Worksheet'", ... en fin,

aqui es donde intento pegar la selección,

Selection.Copy
Plantilla.Worksheets(2).Activate

Cells(8, 3).Select
Selection.PasteSpecial Paste:=xlValues, Operation:=xlNone, SkipBlanks:=
_
False, Transpose:=True
Next x

El "metodo" que me funcionó fue, el siguiente

Tabular.Range("B" & 121 & ":B" & 124).Select

Aunque me gustaría saber cual es la forma correcta de hacer esta seleccion
con la forma
range(cells(row, col), cells(row, col)).select

Agradeciendo de antemano su atención a este mensaje, espero sus
comentarios

César Galicia
Soporte Técnico
TNS-Gallup


Preguntas similares