赵乾舟 发表于 2021-8-25 22:14:39

工作表的新建、复制、获取、重命名、删除

1、新建工作簿,然后新建工作簿
import openpyxl
wb = openpyxl.Workbook() #创建一个默认的工作表名字叫sheet
wb.create_sheet()      #会创建4个工作表,分别叫sheet1、2、3、4
wb.create_sheet()
wb.create_sheet()
wb.create_sheet()
wb.save('f:/new1.xlsx')
print(wb.sheetnames)    #['Sheet', 'Sheet1', 'Sheet2', 'Sheet3', 'Sheet4']
2、打开工作簿,新建工作表
接上一个案例,打开工作簿,然后新建sheet,因为没有指定名称,所以会默认用sheet,但是1、2、3、4都已经存在,所以会新建一个sheet5的工作表
import openpyxl
wb = openpyxl.load_workbook('f:/new1.xlsx')
wb.create_sheet()
wb.save('f:/new1.xlsx')
print(wb.sheetnames)   #['Sheet', 'Sheet1', 'Sheet2', 'Sheet3', 'Sheet4', 'Sheet5']3、指定位置新建工作表
import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
print(wb.sheetnames)#['1月', '2月', '4月']
wb.create_sheet('3月',2)#在指定索引为2的地方,新建工作表命名为“3月”
wb.save("f:/new1.xlsx")
print(wb.sheetnames)#['1月', '2月', '3月', '4月']4、工作表获取方法

[*]获取活动工作表
[*]以索引值获取工作表
[*]以工作表名获取,此方式没有成员提示(.后面的操作方法不提示,但是可以正常用)


import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
print(wb.sheetnames)   #['1月', '2月', '3月', '4月']
#获取活动工作表
ws=wb.active
print(ws)    #<Worksheet "1月">
#以索引值获取表名
ws2 = wb.worksheets
print(ws2)   #<Worksheet "3月">
#以工作表名获取,此方式没有成员提示(.后面不提示方法)
ws3 = wb['4月']
print(ws3)   #<Worksheet "4月">
print(ws3.title)    #4月5、循环获取工作表

import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
for i in wb.worksheets:
    print(i)

# <Worksheet "1月">
# <Worksheet "2月">
# <Worksheet "3月">
# <Worksheet "4月">6、重命名工作表
import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
wb.create_sheet()
print(wb.sheetnames)#['1月', '2月', '3月', '4月', 'Sheet']
wb.worksheets.title = '5月'
print(wb.sheetnames)['1月', '2月', '3月', '4月', '5月']
wb.save("f:/new1.xlsx")7、复制工作表
import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
wb.copy_worksheet(wb['2021年1月']).title = '55'
wb.save("f:/new1.xlsx")如果通过索引值方式复制,第三行代码修改为
wb.copy_worksheet(wb.worksheets).title = '55'8、删除工作表
import openpyxl
wb = openpyxl.load_workbook("f:/new1.xlsx")
wb.remove(wb['2021年1月'])
wb.save("f:/new1.xlsx")



页: [1]
查看完整版本: 工作表的新建、复制、获取、重命名、删除