python与excel第二节
打开一个工作簿
例子:
import xlwings as xw
app = xw.App(visible=True,add_book=False)
workbook = app.books.open(r'D:\TEST\python与excel\工作簿test0.xlsx')
上面例子打开了工作簿test0.xlsx。
但是,如果该excel文件不存在则报错:FileNotFoundError: No such file: 'D:\TEST\python与excel\工作簿test011.xlsx'
如果该excel文件已经被打开,则以只读模式打开。
增加工作表、修改单元格内容
下面增加名字为'订单表'的sheet,修改单元格A1的值为编号。
例子:
import xlwings as xw
app = xw.App(visible=False)
workbook = app.books.add()
worksheet = workbook.sheets.add('订单表')
worksheet.range('A1').value = '编号'
workbook.save(r'D:\TEST\python与excel\订单.xlsx')
workbook.close()
app.quit()
打开一个文件夹下面的所有文件
例子:
import os
import xlwings as xw
file_path = r'D:\TEST\python与excel'# 给出工作簿所在的文件夹路径
file_list = os.listdir(file_path)# 列出路径下所有文件和子文件夹的名称
app = xw.App(visible=True,add_book=False)
for i in file_list:
# splitext() 方法分离文件的文件名和扩展名,返回元组 if os.path.splitext(i)[1] == '.xlsx':# 判断文件夹下文件的扩展名是否为 ".xlsx" app.books.open(file_path + '\\' + i)
按照规则重命名工作簿中工作表名称
import xlwings as xw
app = xw.App(visible = False,add_book=False)
workbook = app.books.open('D:\\TEST\\python与excel\\订单.xlsx')
# 获得所有工作表
worksheets = workbook.sheets
for i in range(len(worksheets)):
# 将 sheet 名称中的 Sheet 替换为订单 worksheets[i].name = worksheets[i].name.replace('Sheet','订单')
workbook.save('D:\\TEST\\python与excel\\订单-重命名.xlsx')
app.quit()
按照规则重命名工作簿中前3个工作表名称
import xlwings as xw
app = xw.App(visible=False,add_book=False)
workbook = app.books.open('D:\\TEST\\python与excel\\订单.xlsx')
worksheets = workbook.sheets
# range 方法返回一个列表,再用 [:3] 做切片,取列表中前三个 sheet
for i in range(len(worksheets))[:3]:
worksheets[i].name = worksheets[i].name.replace('Sheet','订单')
workbook.save('D:\\TEST\\python与excel\\订单2.xlsx')
app.quit()