ES/Manuales/GuiaAOO/TemasAvanzados/Macros/Python/PythonCalc/TrabajandoConHojas
From Apache OpenOffice Wiki
< ES | Manuales | GuiaAOO | TemasAvanzados | Macros | Python | PythonCalc
Revision as of 04:39, 29 April 2013 by Mauriciobaeza (Talk | contribs)
Acceso a las hojas de un archivo Calc
Para acceder a todas las hojas de un archivo usamos el método getSheets.
doc = desktop.getCurrentComponent() hojas = doc.getSheets()
Podemos devolver todos los nombres de las mismas.
doc = desktop.getCurrentComponent() hojas = doc.getSheets() nombres = hojas.getElementNames() msgbox('\n'.join(nombres)) </sourc O acceder por nombre a la que nos interesa ('''getByName'''), tienes que validar ('''hasByName''') primero que existe esta hoja. <source lang=python> doc = desktop.getCurrentComponent() hojas = doc.getSheets() nombre = 'Hoja1' if hojas.hasByName(nombre): hoja = hojas.getByName(nombre) else: msgbox('No existe la hoja: %s' % nombre)
Podemos acceder a una hoja por su índice, recuerda que los índices en AOO empiezan en cero, en las hojas, la numeración empieza de izquierda a derecha.
doc = desktop.getCurrentComponent() hojas = doc.getSheets() indice = 1 hoja = hojas.getByIndex(indice) msgbox (hoja.getName())
Del mismo modo que por el nombre, si tratas de acceder a una hoja por un índice que no exista, te dará un error, lo podemos comprobar asegurándonos que el numero de índice a consultar siempre es menor al total de las hojas.
doc = desktop.getCurrentComponent() hojas = doc.getSheets() indice = 1 if indice < hojas.getCount(): hoja = hojas.getByIndex(indice) msgbox (hoja.getName()) else: msgbox(u'No existe este índice: %s' % indice)
Podemos acceder a cada hoja por su índice.
doc = desktop.getCurrentComponent() hojas = doc.getSheets() for i in range(hojas.getCount()): msgbox(hojas.getByIndex(i).getName())