Python操作excel文件创建workbook和批量创建Sheet
第一步,创建workbook和sheet
from openpyxl import Workbook
wb=Workbook()
wb.create_sheet(index=1,title="sheet2")
wb.save('test1.xlsx')
创建成功,workbook
名称=test1
,有sheet
和sheet2
两张表
第二步,批量创建多个sheet
from openpyxl import Workbook
from openpyxl import load_workbook
wb=load_workbook('test1.xlsx')
for i in range(3):
wb.create_sheet(index=1,title="sheet"+str(i))
wb.save('test1.xlsx')
创建成功
第二步*-
删除index=1
对比结果
第三步,在第一个sheet写入数据rom openpyxl import Workbookfrom openpyxl import load_workbook
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from openpyxl import Workbook
from openpyxl import load_workbook
wb=load_workbook('test1.xlsx')
sheets=wb.worksheets #获取当前所有的sheet
ws=wb.active
ws['A1']='class'
ws['B1']='name'
ws['c1'].value='score'
# ws.cell(row=1,colum=1)='class'
# ws.cell(1,2).value='name'
# ws.cell(1,3).value='score'
row1=['class1','SC001','TC001']
row2=['class2','SC002','TC002']
row3=['class3','SC003','TC003']
row4=['class4','SC004','TC004']
ws.append(row1)
ws.append(row2)
ws.append(row3)
ws.append(row4)
#循环写法
#for i in range(1,6):
#row=[]
#row.append('class'+str(i))
#row.append('SC'+str("%03d"%i)) #数字前补充00对齐,三位数
#row.append('TC'+str("%03d"%i))
#ws.append(row)
wb.save('test1.xlsx')
运行结果
第四步,根据固定名称批量创建sheet
当前的表格数据
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:778463939
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
from openpyxl import Workbook
from openpyxl import load_workbook
wb=load_workbook('test1.xlsx')
sheets=wb.worksheets #获取当前所有的sheet
#获取某列的值
col1=[]
for col in sheets[0]['B']:
col1.append(col.value)
col2=col1[1:] #去除第一行的字段
print(col2)
# 批量新增sheetB
for i in range(len(col2)):
wb.create_sheet(title=col2[i])
wb.save('test1.xlsx')
运行完成后的表格