内容控件在 Excel 中扮演着重要的角色,为数据输入、展示和用户交互提供了强大的功能。这些控件包括文本框、单选按钮、复选框、下拉框等。这些控件为用户提供了更高效、直观和灵活的数据处理方式,使得 Excel 成为一个强大的数据管理和分析工具。本文将介绍如何使用 Spire.XLS for Python 在 Python 添加内容控件到 Excel 文档和编辑 Excel 文档中的内容控件。
安装 Spire.XLS for Python
本教程需要 Spire.XLS for Python 和 plum-dispatch v1.7.4。您可以通过以下 pip 命令将它们轻松安装到 Windows 中。
pip install Spire.XLS
如果您不确定如何安装,请参考此教程: 如何在 Windows 中安装 Spire.XLS for Python
Python 添加内容控件到 Excel 文档
Spire.XLS for Python 可以添加 Excel 支持到的内容控件,比如文本框、单选按钮、下拉框(也叫组合框)和复选框等等。下面是详细的步骤:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法加载一个 Excel 数据文档。
- 使用 Workbook.Worksheets[] 属性获取所需的工作表。
- 通过 Worksheet.TextBoxes.AddTextBox() 方法来添加文本框。
- 通过 Worksheet.RadioButtons.Add() 方法来添加单选按钮。
- 通过 Worksheet.ComboBoxes.AddComboBox() 方法来添加组合框。
- 通过 worksheet.CheckBoxes.AddCheckBox() 方法来添加复选框。
- 使用 Workbook.SaveToFile() 方法保存结果文件。
- Python
from spire.xls.common import *
from spire.xls import *
# 创建一个新的 Workbook 对象
workbook = Workbook()
# 加载现有的 Excel 文件
workbook.LoadFromFile("Data/示例01.xlsx")
# 选择第一个工作表
worksheet = workbook.Worksheets[0]
# 设置文本框的高度(单位:磅)
height = 40
# 在工作表上添加一个文本框
textbox = worksheet.TextBoxes.AddTextBox(3, 2, height, 400)
textbox.Line.ForeKnownColor = ExcelColors.Black
textbox.Text = "张三"
# 在工作表上添加单选按钮
radioButton1 = worksheet.RadioButtons.Add(5, 2, height, 42)
radioButton1.Text = " 男"
radioButton2 = worksheet.RadioButtons.Add(5, 3, height, 42)
radioButton2.Text = " 女"
# 将另一个工作表的数据范围分配给组合框
dataSheet = workbook.Worksheets[1]
comboBoxShape = worksheet.ComboBoxes.AddComboBox(7, 2, 30, 100)
comboBoxShape.ListFillRange = dataSheet.Range["A1:A7"]
comboBoxShape.SelectedIndex = 1
# 在工作表上添加复选框
checkBox = worksheet.CheckBoxes.AddCheckBox(9, 2, height, 42)
checkBox.CheckState = CheckState.Checked
checkBox.Text = "唱歌"
checkBox = worksheet.CheckBoxes.AddCheckBox(9, 3, height, 42)
checkBox.CheckState = CheckState.Checked
checkBox.Text = "跳舞"
checkBox = worksheet.CheckBoxes.AddCheckBox(9, 4, height, 42)
checkBox.CheckState = CheckState.Checked
checkBox.Text = "运动"
checkBox = worksheet.CheckBoxes.AddCheckBox(9, 5, height, 42)
checkBox.CheckState = CheckState.Checked
checkBox.Text = "乐器"
# 将修改后的工作簿保存为新文件
workbook.SaveToFile("添加内容控件.xlsx", ExcelVersion.Version2016)
# 清理并释放工作簿对象
workbook.Dispose()
Python 编辑 Excel 文档中的内容控件
Spire.XLS for Python 也可以修改 Excel 文档中已有的内容控件的属性,比如修改文本框的内容、重设下拉框的选中项、不显示某个内容控件等等。以下是详细步骤:
- 创建 Workbook 类的对象。
- 使用 Workbook.LoadFromFile() 方法加载一个 Excel 文档。
- 使用 Workbook.Worksheets[] 属性获取所需的工作表。
- 通过 Worksheet.TextBoxes[].Text 属性修改文本框的显示内容。
- 通过 Worksheet.TextBoxes[].Visible 属性来设置是否显示当前文本框。
- 通过 Worksheet.RadioButtons[].CheckState 属性设置是否选中当前单选按钮。
- 使用 Worksheet.ComboBoxes[].SelectedIndex 属性来设置组合框的选中项。
- 使用 worksheet.CheckBoxes[].CheckState 属性来设置是否选中当前复选框。
- 使用 Workbook.SaveToFile() 方法保存结果文件。
- Python
from spire.xls.common import *
from spire.xls import *
# 创建一个Workbook对象
workbook = Workbook()
# 从文件加载Excel数据
workbook.LoadFromFile("Data/示例02.xlsx")
# 获取第一个工作表
worksheet = workbook.Worksheets[0]
# 设置第一个文本框的文本内容为"张三"
worksheet.TextBoxes[0].Text = "张三"
# 设置第二个文本框的文本内容为"zhangsan @163.com"
worksheet.TextBoxes[1].Text = "zhangsan @163.com"
# 隐藏第四个文本框
worksheet.TextBoxes[3].Visible = False
# 将第一个单选按钮设为选中状态
worksheet.RadioButtons[0].CheckState = CheckState.Checked
# 设置第一个下拉框的选中项索引为0(即第一个选项)
worksheet.ComboBoxes[0].SelectedIndex = 0
# 将第一个复选框设为选中状态
worksheet.CheckBoxes[0].CheckState = CheckState.Checked
# 将第三个复选框设为未选中状态
worksheet.CheckBoxes[2].CheckState = CheckState.Unchecked
# 将修改后的工作簿保存为新文件
workbook.SaveToFile("编辑内容控件.xlsx", ExcelVersion.Version2016)
# 清理并释放工作簿对象
workbook.Dispose()
申请临时 License
如果您希望删除结果文档中的评估消息,或者摆脱功能限制,请该Email地址已收到反垃圾邮件插件保护。要显示它您需要在浏览器中启用JavaScript。获取有效期 30 天的临时许可证。