Saltar al contenido

Como trabajar en archivos abiertos con object Excel.Application


Recommended Posts

publicado

Hola a todos, tengo la siguiente parte de una macro y solicito su ayuda:

nombre=prueba.xslx

'creo un objeto:

Set XL = CreateObject("Excel.Application")

XL.Visible = True

'creo un nuevo libro llamado "prueba", cierro el archivo

Workbooks.Add

ActiveWorkbook.SaveAs nombre, -4143

ActiveWorkbook.Close

'abro con XL el libro creado

XL.Workbooks.Open "prueba.xslx"

'Selecciono la celda "a1" en el archivo prueba creado, hasta aquí no hay problema

XL.Workbooks(nombre).Sheets(1).Range("a1", "a1").Select

'aqui está el problema pues al ejecutar estos comandos, estos se ejecutan en el libro desde el que corro la macro

'lo que necesito es que corran desde el nuevo libro "prueba" que fue creado

Selection.End(xlDown).Select

Selection.End(xlDown).Select

Selection.End(xlDown).Select

ActiveCell.Rows("1:1").EntireRow.Select

Range(Selection, Selection.End(xlDown)).Select

Selection.Copy

Espero que puedan ayudarme, lo que necesito es trabajar sobre el archivo que es creado por el excel.application.

Saludos,

Patricio

publicado

El problema es de concepto, en el momento que creas un objeto, para poder referenciarte a él, debes calificarlo.

Piensa que has creado un objeto Excel, pero podías haber creado un objeto Outlook, Word, ADO, ... por citar alguno.

Tu Excel no sabe que es tu objeto "Excel.Application" si no se lo especificas, o sea tienes dos aplicaciones Excel abiertas, pero ellas no lo saben.

No se cual es el motivo de usar CreateObject, porqué para tratar el nuevo libro no es necesario.

Explica cual es tu problema, parece que quieres copiar un rango del libro nuevo, pero no está claro que es lo que quieres hacer con la macro.

También puedes usar la grabadora de maccros, que te iría muy bien en este caso.

Archivado

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

×
×
  • Crear nuevo...

Información importante

Echa un vistazo a nuestra política de cookies para ayudarte a tener una mejor experiencia de navegación. Puedes ajustar aquí la configuración. Pulsa el botón Aceptar, si estás de acuerdo.