2016-04-23 25 views
5

Sto scrivendo alcuni dati in un file di Excel, ma non so come regolare il codice al fine di essere in grado di controllare quali foglio scrivo in:Python openpyxl selezionare foglio

wb= load_workbook(filename) 
active_ws=wb.active 

Invece di wb.active , come posso dire qualcosa come Sheets('Data') (questo è come apparirebbe la sintassi VBA ...)?

+0

Questo è trattato nella documentazione. –

risposta

10

Si dovrebbe usare wb[sheetname]

from openpyxl import load_workbook 
wb2 = load_workbook('test.xlsx') 
ws4 = wb2["New Title"] 

PS: Si dovrebbe verificare se il foglio in nomi dei fogli wb.sheetnames

print(wb2.sheetnames) 
['Sheet2', 'New Title', 'Sheet1'] 
+0

quindi, come posso fare riferimento al foglio che desidero scrivendo? 'active_ws = wb.get_sheet_by_name (" Data ")'? –

+0

'active_ws = wb.get_sheet_by_name (" Data ")' lo fa, ma ti suggerisco di modificare la risposta, perché non è immediatamente chiaro quale sia la soluzione –

Problemi correlati