PDA

Ver la Versión Completa : + Excel!!! :(


alt126
13-04-2005, 10:24:30
Y otra duda mas....como odio esto....la cosa es que trabajar con las 3 hojas que te abre por defecto, hasta ahi vale...pero si quieres añadir otra hoja mas? como se hace?:confused:

He probado con un metodo "NewSheet"...pero no me deja automatizarlo!!
:(
AYUDAAAAAAAAAAAAAAAA

Gracias

Antonio

droguerman
13-04-2005, 19:52:15
suponiendo que tu objeto applicación se llama msExcel

newPagina := msExcel.activeWorkbook.pages.add;
newPagina.name := 'nuevaPagina';

alt126
14-04-2005, 09:54:09
He intentado eso...de esta manera:

Variant MiColeccionLibros=Excel.OlePropertyGet("Workbooks");
Variant z= MiColeccionLibros.OlePropertyGet("Pages");
z.OleProcedure("Add");
z.OlePropertySet("Name",(Variant)"Nueva");


Pero me da un fallo de "Pages not supported by automation object"....osea que ese metodo no se puede automatizar???

Y por cierto...el codigo ese que has puesto...lo has probado? pq yo no se como usar los metodos de automatizacion como tu lo haces, como una clase vamos, yo los tengo que pasar como parametros con las funciones de OLE.

Gracias

Antonio

alt126
14-04-2005, 10:45:53
La solucion es la siguiente:


Variant Excel = Variant::CreateObject("Excel.Application");
Excel.OlePropertySet("Visible",(Variant)true);
Variant MiColeccionLibros=Excel.OlePropertyGet("Workbooks");
MiColeccionLibros.OleProcedure("Add");
Variant MiLibro=MiColeccionLibros.OlePropertyGet("Item",(Variant)1);
Variant e = MiLibro.OlePropertyGet("Sheets");

e.OleProcedure("Add"); //Esto es lo que crea una nueva hoja!!

GRACIAS A DAVID (GOKU)!!!! :p

Antonio