第二章 用xlwings模块管理工作薄
2.1 启动和退出excel
xlwings.App() 是一个用于创建和操作Excel应用程序实例的函数。它允许你通过Python脚本与Excel进行交互,执行各种操作,如打开工作簿、创建新工作簿、运行宏等。
import xlwings as xw
# 创建一个新的Excel应用程序实例
app = xw.App(visible=True, add_book=False)
# 在这里可以执行各种操作,例如打开工作簿、创建新工作簿等
# 关闭Excel应用程序实例
app.quit()
在这个示例中,我们导入了xlwings库,并使用 xw.App() 函数创建了一个Excel应用程序实例。visible=True 参数表示应用程序窗口可见,add_book=False 参数表示不自动打开新的工作簿。你可以在创建应用程序实例后执行各种操作,然后使用 app.quit() 方法关闭应用程序实例。
2.2 工作薄的基本操作
2.2.1 open()和close()函数–打开和关闭工作薄
xlwings中,可以使用open()函数打开一个Excel文件,并返回一个Workbook对象。同样地,可以使用close()方法关闭一个Workbook对象。
以下是一个简单的示例,展示了如何使用xlwings打开和关闭Excel文件:
import xlwings as xw
# 打开一个现有的Excel文件
workbook = xw.App.books.open('example.xlsx')
# 在这里可以执行各种操作,例如读取、写入数据等
# 关闭工作簿
workbook.close()
在这个示例中,我们首先导入xlwings库,然后使用xw.Book()函数打开一个名为example.xlsx的Excel文件。接着,你可以在打开的工作簿上执行各种操作。最后,我们使用workbook.close()方法关闭工作簿。
2.2.2 add()和save()函数–新建和保存工作薄
在xlwings中,可以使用add()函数创建一个新的工作表,并返回一个Sheet对象。而save()方法则用于保存Workbook对象的更改。
import xlwings as xw
# 打开一个现有的Excel文件
app = xw.App(visible=True, add_book=False)
# 添加一个新的工作表
workbook = app.books.add()
# 在这里可以执行各种操作,例如读取、写入数据等
# 保存工作簿
workbook.save('example.xlsx')
# 关闭工作簿
workbook.close()
在这个示例中,我们首先导入xlwings库,然后打开一个名为example.xlsx的Excel文件。接着,我们使用add()函数添加一个名为NewSheet的新工作表。你可以在新工作表上执行各种操作。最后,我们使用workbook.save()方法保存工作簿,并使用workbook.close()方法关闭工作簿。
2.2.3 fullname属性和name属性–获取工作薄的绝对路径和SHEET名称
xlwings中,fullname属性用于获取Workbook或Name对象的完整路径。对于Workbook对象,它返回工作簿文件的完整路径;对于Name对象,它返回名称所代表的范围的完整路径。
以下是一个简单的示例,展示了如何使用xlwings获取Workbook和Name对象的fullname属性:
mport xlwings as xw
# 打开一个现有的Excel文件
app = xw.App()
workbook = app.books.open('example.xlsx')
# 获取工作簿的完整路径
workbook_fullname = workbook.fullname
print("Workbook fullname:", workbook_fullname)
# 获取工作簿中第一个工作表的名称
sheet_name = workbook.sheets[0].name
# 获取该工作表的名称范围对象的完整路径
name_fullname = workbook.names(f"{sheet_name}!NamedRange").fullname
print("Name fullname:", name_fullname)
# 关闭工作簿
workbook.close()