Copiar columnas de un archivo a otro.

27/02/2007 - 20:38 por ~ jose ~ | Informe spam
Hola, que tal?
Quisiera saber como puedo copiar las columnas B:Q de la hoja 1 y las
columnas A:F de la hoja 2 a un archivo existente pero sin abrir el
archivo de destino. Digo sin abrir porque al abrirlo se abre un
formulario (entre otras cosas), quiazas abrirlo en segundo plano...
Lo único si se podria abrir el archivo de destino deshabilitando las
macros..., no se si se podrá.

Por lanzar una idea quizas se podria hacer con FreeFile, lo que pasa
es que no se como.

Ah! no he dicho nada pero quisiera hacer TODO mediante código, osea
que con un archivo abierto (me dá igual si tiene que ser el de origen
o el de destino), que él solo haga todo, abir el archivo si es
necesario, cerrarlo si lo ha abierto, etc...

Venga, gracias y un saludo,
jose

Preguntas similare

Leer las respuestas

#6 ~ jose ~
28/02/2007 - 16:05 | Informe spam
Hola que tal?
El código que tengo en el archivo a abir es este:

Private Sub Workbook_Open()
UserForm1.Show
End Sub

Con esta macro me abre el archivo pero se ejecuta el evento open del
libro mostrando el formulario.
Sub Macro1()
Application.ScreenUpdating = False
Workbooks.Open "C:\Archivo a abrir.xls"
Application.ScreenUpdating = True
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Con esta macro se abre el archivo sin ejecutar el evento open pero NO
me sigue leyendo el código, no me aparece el MsgBox que he puesto de
prueba.
Sub Macro2()
Application.AutomationSecurity = msoAutomationSecurityForceDisable
Workbooks.Open "C:\Archivo a abrir.xls"
Application.AutomationSecurity = secAutomation
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Sobre la Macro2 comentabas que tiene que ser para Excel 2002 o
superior, no?, lo que pasa que es para poner el libro en mi web y así
se lo descargue la gente y claro, no sé que versión tiene ellos
instalada. Se podría hacer para que sirvan para las demás versiones?.

Gracias y un saludo
jose

Hola, que tal?
Quisiera saber como puedo copiar las columnas B:Q de la hoja 1 y las
columnas A:F de la hoja 2 a un archivo existente pero sin abrir el
archivo de destino. Digo sin abrir porque al abrirlo se abre un
formulario (entre otras cosas), quiazas abrirlo en segundo plano...
Lo único si se podria abrir el archivo de destino deshabilitando las
macros..., no se si se podrá.

Por lanzar una idea quizas se podria hacer con FreeFile, lo que pasa
es que no se como.

Ah! no he dicho nada pero quisiera hacer TODO mediante código, osea
que con un archivo abierto (me dá igual si tiene que ser el de origen
o el de destino), que él solo haga todo, abir el archivo si es
necesario, cerrarlo si lo ha abierto, etc...

Venga, gracias y un saludo,
jose
Respuesta Responder a este mensaje
#7 ~ jose ~
28/02/2007 - 21:19 | Informe spam
Hola otra vez,
y digo yo:
si esto que propongo tiene pinta de ser mas complicado o quizas de no
poderlo aplicar para todas las versiones de excel (o por lo menos de
la 2000 en adelante, ya que creo qeu muy pocos utilizan la 97) que tal
si se exportan las columnas que quiero de las dos hojas a un txt (o
quizas tiene que se a dos txt, uno por cada hoja) y desde el otro
archivo las importo?. Sería marear mucho la perdiz???

Venga, un saludo y hasta luego.
jose


Hola que tal?
El código que tengo en el archivo a abir es este:

Private Sub Workbook_Open()
UserForm1.Show
End Sub

Con esta macro me abre el archivo pero se ejecuta el evento open del
libro mostrando el formulario.
Sub Macro1()
Application.ScreenUpdating = False
Workbooks.Open "C:\Archivo a abrir.xls"
Application.ScreenUpdating = True
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Con esta macro se abre el archivo sin ejecutar el evento open pero NO
me sigue leyendo el código, no me aparece el MsgBox que he puesto de
prueba.
Sub Macro2()
Application.AutomationSecurity = msoAutomationSecurityForceDisable
Workbooks.Open "C:\Archivo a abrir.xls"
Application.AutomationSecurity = secAutomation
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Sobre la Macro2 comentabas que tiene que ser para Excel 2002 o
superior, no?, lo que pasa que es para poner el libro en mi web y así
se lo descargue la gente y claro, no sé que versión tiene ellos
instalada. Se podría hacer para que sirvan para las demás versiones?.

Gracias y un saludo
jose



> Hola, que tal?
> Quisiera saber como puedo copiar las columnas B:Q de la hoja 1 y las
> columnas A:F de la hoja 2 a un archivo existente pero sin abrir el
> archivo de destino. Digo sin abrir porque al abrirlo se abre un
> formulario (entre otras cosas), quiazas abrirlo en segundo plano...
> Lo único si se podria abrir el archivo de destino deshabilitando las
> macros..., no se si se podrá.

> Por lanzar una idea quizas se podria hacer con FreeFile, lo que pasa
> es que no se como.

> Ah! no he dicho nada pero quisiera hacer TODO mediante código, osea
> que con un archivo abierto (me dá igual si tiene que ser el de origen
> o el de destino), que él solo haga todo, abir el archivo si es
> necesario, cerrarlo si lo ha abierto, etc...

> Venga, gracias y un saludo,
> jose- Ocultar texto de la cita -

- Mostrar texto de la cita -
Respuesta Responder a este mensaje
#8 KL
28/02/2007 - 21:31 | Informe spam
Hola Jose,

Te pido perdon por mi falta de atencion :-) En realidad me referia a la propiedad EnableEvents y no ScreenUpdating.

Application.EnableEvents =False
Workbooks.Open "C:\Libro1.xls"
Application.EnableEvents =True

Por cierto, el mensaje al final del codigo que expones no demuestra nada :-(

Sub Macro1()
Application.ScreenUpdating = False
Workbooks.Open "C:\Archivo a abrir.xls"
Application.ScreenUpdating = True
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Saludos,
KL

"~ jose ~" wrote in message news:
Hola otra vez,
y digo yo:
si esto que propongo tiene pinta de ser mas complicado o quizas de no
poderlo aplicar para todas las versiones de excel (o por lo menos de
la 2000 en adelante, ya que creo qeu muy pocos utilizan la 97) que tal
si se exportan las columnas que quiero de las dos hojas a un txt (o
quizas tiene que se a dos txt, uno por cada hoja) y desde el otro
archivo las importo?. Sería marear mucho la perdiz???

Venga, un saludo y hasta luego.
jose


Hola que tal?
El código que tengo en el archivo a abir es este:

Private Sub Workbook_Open()
UserForm1.Show
End Sub

Con esta macro me abre el archivo pero se ejecuta el evento open del
libro mostrando el formulario.
Sub Macro1()
Application.ScreenUpdating = False
Workbooks.Open "C:\Archivo a abrir.xls"
Application.ScreenUpdating = True
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Con esta macro se abre el archivo sin ejecutar el evento open pero NO
me sigue leyendo el código, no me aparece el MsgBox que he puesto de
prueba.
Sub Macro2()
Application.AutomationSecurity = msoAutomationSecurityForceDisable
Workbooks.Open "C:\Archivo a abrir.xls"
Application.AutomationSecurity = secAutomation
MsgBox "si se muestra este mensaje es que el código ha continuado"
End Sub

Sobre la Macro2 comentabas que tiene que ser para Excel 2002 o
superior, no?, lo que pasa que es para poner el libro en mi web y así
se lo descargue la gente y claro, no sé que versión tiene ellos
instalada. Se podría hacer para que sirvan para las demás versiones?.

Gracias y un saludo
jose



> Hola, que tal?
> Quisiera saber como puedo copiar las columnas B:Q de la hoja 1 y las
> columnas A:F de la hoja 2 a un archivo existente pero sin abrir el
> archivo de destino. Digo sin abrir porque al abrirlo se abre un
> formulario (entre otras cosas), quiazas abrirlo en segundo plano...
> Lo único si se podria abrir el archivo de destino deshabilitando las
> macros..., no se si se podrá.

> Por lanzar una idea quizas se podria hacer con FreeFile, lo que pasa
> es que no se como.

> Ah! no he dicho nada pero quisiera hacer TODO mediante código, osea
> que con un archivo abierto (me dá igual si tiene que ser el de origen
> o el de destino), que él solo haga todo, abir el archivo si es
> necesario, cerrarlo si lo ha abierto, etc...

> Venga, gracias y un saludo,
> jose- Ocultar texto de la cita -

- Mostrar texto de la cita -
Respuesta Responder a este mensaje
#9 ~ jose ~
28/02/2007 - 22:15 | Informe spam
Hola,
muy bien, ahora si que hace lo que se pretendia, que abriera el libro
sin ejecutar las macros Y que continuara leyendo el código (en este
caso seria mostrar el MsgBox que he puesto de prueba). Con la otra
macro una vez abierto "Archivo a abrir", no me seguia leyendo el
código, osea que no me mostraba el MsgBox, sólamente se abria el
archivo y nada más, se saltaba todo el código que contenia la macro.

Ahora lo que haré será probar a ver si puedo copiar las columnas de
las dos hojas que hacia mención, pegarlas en el archivo a abrir (que
ya estaría abierto) y cerrar el archivo que estoy utilizando o incluso
eliminarlo y asi dejar el "Archivo a abrir" con los datos actualizados
del otro archivo.

Venga!, un saludo y gracias, vale?
PD: Quedas perdonado por tu falta de antención, joe! contento me puedo
ver de que me hayas contestado hombre!!!
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una pregunta AnteriorRespuesta Tengo una respuesta
Search Busqueda sugerida