COPIAR DE UNA HOJA AOTRA

18/01/2006 - 21:02 por Germin | Informe spam
HOLA, SABEN QUE NO PUEDO TRAER DATOS DE UNA HOJA AOTRA CON UNA MACRO, PARECE
QUE SE VUELVE LOCA CUANDO CAMBIA DE HOJA

SALUDOS GERMIN

Preguntas similare

Leer las respuestas

#1 KL
18/01/2006 - 23:29 | Informe spam
Hola Germin,

???Es esto una consulta o simplemente un acto de deshaogo ante un problema :-)???
Si quieres que intentemos resolver el problema juntos, vamos a necesitar el codigo completo que usas, el tipo de error que te da y
en que linea. O si "...se vuelve loca..." significa otra cosa tendras que aclararlo tambien.

Un saludo,
KL


"Germin" wrote in message news:
HOLA, SABEN QUE NO PUEDO TRAER DATOS DE UNA HOJA AOTRA CON UNA MACRO, PARECE
QUE SE VUELVE LOCA CUANDO CAMBIA DE HOJA

SALUDOS GERMIN
Respuesta Responder a este mensaje
#2 Germin
20/01/2006 - 20:32 | Informe spam
HOLA LK, LO QUE OCURRE E QUE INTENTO COPIAR UN VALOR DE UNA HOJA Y HAGO LO
SIGUIENTE:

SELECCIONO LA HOJA
SELECCIONO LA CELDA QUE QUIERO COPIAR
LA COPIO
SELECCIONO LA HOJA DE DESTINO
SELECCIONO LA CELDA
LA PEGO

PERO ME TIRA UN ERROR, Y ME DICE QUE NO SE PUEDE PEGAR.

Sheets("Hoja2").Select
Set rng1 = Range(Cells(1,1), Cells(1,1))
rng1.Select
ActiveSheet.Copy
Sheets("Hoja2").Select
Set rng2 = Range(Cells(1,1), Cells(1,1))
rng2.Select
ActiveSheet.Paste

utilizo la funcion rango porque aveces debo pegar mas de una celda
Respuesta Responder a este mensaje
#3 KL
20/01/2006 - 21:53 | Informe spam
Hola Germin,

La verdad es que lo que intenta hacer (incorrectamente) tu codigo no me parece que tenga sentido. Si es lo que creo, quizas te valga
el siguiente codigo:

Sub test()
Dim rng As Range
Sheets("Hoja2").Copy Sheets(1)
With ActiveSheet.Range("A1:B1")
.Value = .Value
End With
Application.CutCopyMode = False
End Sub


Saludos,
KL



"Germin" wrote in message news:
HOLA LK, LO QUE OCURRE E QUE INTENTO COPIAR UN VALOR DE UNA HOJA Y HAGO LO
SIGUIENTE:

SELECCIONO LA HOJA
SELECCIONO LA CELDA QUE QUIERO COPIAR
LA COPIO
SELECCIONO LA HOJA DE DESTINO
SELECCIONO LA CELDA
LA PEGO

PERO ME TIRA UN ERROR, Y ME DICE QUE NO SE PUEDE PEGAR.

Sheets("Hoja2").Select
Set rng1 = Range(Cells(1,1), Cells(1,1))
rng1.Select
ActiveSheet.Copy
Sheets("Hoja2").Select
Set rng2 = Range(Cells(1,1), Cells(1,1))
rng2.Select
ActiveSheet.Paste

utilizo la funcion rango porque aveces debo pegar mas de una celda

Respuesta Responder a este mensaje
#4 Enrique Perez
20/01/2006 - 22:28 | Informe spam
El error en tu macro es que el objeto del argumento copy debe ser el
rango seleccionado, como en tu procedimiento ya lo seleccionaste utiliza
la siguiente sentencia:

rng1.Select
Selection.copy <-- En lugar de ActiveSheet.copy

rng2.Select
selection.paste

Saludos


Germin escribió:
HOLA LK, LO QUE OCURRE E QUE INTENTO COPIAR UN VALOR DE UNA HOJA Y HAGO LO
SIGUIENTE:

SELECCIONO LA HOJA
SELECCIONO LA CELDA QUE QUIERO COPIAR
LA COPIO
SELECCIONO LA HOJA DE DESTINO
SELECCIONO LA CELDA
LA PEGO

PERO ME TIRA UN ERROR, Y ME DICE QUE NO SE PUEDE PEGAR.

Sheets("Hoja2").Select
Set rng1 = Range(Cells(1,1), Cells(1,1))
rng1.Select
ActiveSheet.Copy
Sheets("Hoja2").Select
Set rng2 = Range(Cells(1,1), Cells(1,1))
rng2.Select
ActiveSheet.Paste

utilizo la funcion rango porque aveces debo pegar mas de una celda

Respuesta Responder a este mensaje
#5 KL
20/01/2006 - 23:18 | Informe spam
Hola chicos,

Aunque no estoy del todo de acuerdo con la propuesta de Enrique (el uso del metodo Select es totalmente innecesario), si que creo
que el ha acertado con lo que se pretende hacer con el codigo: en vez de ActiveSheet se queria poner ActiveCell. Asi que mi
propuesta seria la siguiente:

Sub test()
With Sheets("Hoja2")
.Range("A1:C1").Copy .Range("A5")
End With
Application.CutCopyMode = False
End Sub

Por cierto, no veo muy convincente la explicacion que expone Germin para el uso de la construccion Range(Cells(1,1), Cells(1,1)).
Para usar un rango de celdas contiguas (que es lo que hace su construccion) basta con la notacion normal Range("A1:A1") que ademas
es mucho mas rapida.

Y otra cosa - no es necesario reproducir las dimensiones del rango copiado en el rango de destino, bastaria con indicar la primera
celda del rango de destino.

Saludos,
KL


"Enrique Perez" wrote in message news:
El error en tu macro es que el objeto del argumento copy debe ser el rango seleccionado, como en tu procedimiento ya lo
seleccionaste utiliza la siguiente sentencia:

rng1.Select
Selection.copy <-- En lugar de ActiveSheet.copy

rng2.Select
selection.paste

Saludos


Germin escribió:
HOLA LK, LO QUE OCURRE E QUE INTENTO COPIAR UN VALOR DE UNA HOJA Y HAGO LO SIGUIENTE:

SELECCIONO LA HOJA
SELECCIONO LA CELDA QUE QUIERO COPIAR
LA COPIO
SELECCIONO LA HOJA DE DESTINO
SELECCIONO LA CELDA
LA PEGO

PERO ME TIRA UN ERROR, Y ME DICE QUE NO SE PUEDE PEGAR.

Sheets("Hoja2").Select
Set rng1 = Range(Cells(1,1), Cells(1,1))
rng1.Select
ActiveSheet.Copy
Sheets("Hoja2").Select
Set rng2 = Range(Cells(1,1), Cells(1,1))
rng2.Select
ActiveSheet.Paste

utilizo la funcion rango porque aveces debo pegar mas de una celda




email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida