>>> #Con la libreria xlrd puedo referirme a una hoja con el metido Workbook.sheet_by_name(), sin embargo, en la libreria xlwt solo puedo referirme a las hojas por numero de index.
>>> #Entonces voy a crear un diccionario con los nombres de cada hoja y sus respectivos indices para luego poderlos utilizar en la librería xlwt sin confundirme.
>>> #Tengo el reporte de Willy
... willyReport = xlrd.open_workbook('cctable.xlsx')
>>> #Creo una lista que contiene los nombres de todas las hojas.
>>> sheetNames = willyReport.sheet_names()
>>> #Con un loop veo el listado de todas las hojas.
>>> for sheet in sheetNames:
... print sheet
...
Guayaquil
Quito
Spare Parts
Express
Temp Exports 51
Temp Import 20
Exports
OLD FILES
Ecuador Holidays 2011
Licencias
FILE LOCATION
HTM
>>> #Ahora si creo un diccionario en blanco y una variable de control o contador:
>>> sheetIndexes = {}
>>> n=0
>>> for sheet in sheetNames:
... sheetIndexes[sheet] = n
... n+=1
>>> #Hago otro for loop para ver el contenido del diccionario ahora presentado como una lista. Estaá desordenado pero eso no es lo importante:
>>> for item in sheetIndexes.items():
... print item
...
(u'Exports', 6)
(u'Temp Import 20', 5)
(u'Temp Exports 51', 4)
(u'Quito', 1)
(u'HTM', 11)
(u'Express', 3)
(u'OLD FILES', 7)
(u'Ecuador Holidays 2011', 8)
(u'Licencias', 9)
(u'FILE LOCATION', 10)
(u'Spare Parts', 2)
(u'Guayaquil', 0)
>>> #Hago la prueba ingresando el nombre de cada hoja, y la respuesta debe ser el numero de indice:
>>> sheetIndexes['Guayaquil']
0
>>> sheetIndexes['Express']
3
>>> sheetIndexes['Exports']
6
>>> #Ahora si estoy listo para usar la función xlwt.Workbook.get_sheet(sheetIndexes['Guayaquil']) y manipular las hojas.
No hay comentarios:
Publicar un comentario