跳至页脚内容
使用 IRONXL FOR PYTHON

如何使用 Python 将 Excel 文件中的单元格合并

在电子表格操作世界中,Excel作为基础工具,提供了多种功能,满足金融、工程、统计等各领域的需求。 在众多功能中,合并Excel中指定单元格的能力通常用于增强数据的展示和可视化。 在数据管理的动态环境中,组织和有效整合数据至关重要。 Excel凭借其多功能性,成为许多专业人士的首选工具。 然而,当涉及到以编程方式在Excel中合并或取消合并单元格时,Python成为一个强大的助手。 在本文中,我们将探讨如何通过 Python 结合像 IronXL这样的库,简化在一个新 Excel 文件中合并单元格的过程,使用户能够简化其数据组织工作流程。

如何使用 Python 在 Excel 文件中合并单元格

  1. 安装IronXL。
  2. 加载现有工作簿。
  3. 选择Excel工作表。
  4. 使用Merge函数合并指定的单元格。
  5. 使用Unmerge函数在Excel中拆分合并的单元格。

为何使用IronXL?

IronXL是一个由 Iron Software 开发和维护的强大的 Python 库。 其主要目的是为在Python应用程序和网站中处理Excel文件(以及其他电子表格格式)提供一种直观且高效的方式。 以下是IronXL的一些关键特性:

  1. IronXL 允许您从现有Excel文件(XLSX, XLS, XLSM, XLTX, CSV 和 TSV)中读取数据。 您还可以以编程方式生成的Excel文件并编辑现有文件。
  2. IronXL在不同平台(包括Windows, macOS, Linux, Docker, Azure和AWS)上无缝运行。 无论您是本地机器开发还是部署到云端,IronXL 都能满足您的需求。
  3. 该库为处理 Excel 电子表格提供了一个易于使用的 API。 您可以加载工作簿,选择工作表,读取单元格值,应用样式,取消合并单元格,并执行各种操作而无需复杂设置。
  4. IronXL允许您通过设置字体属性、背景图案、边框和对齐来设计单元格。 您可以将单元格格式化为文本、数字、日期、货币、百分比等。
  5. 您可以使用Excel公式,每次编辑工作表时它们都将重新计算。 对单元格范围执行计算,例如求和、最小值或最大值。

使用IronXL合并Excel文件中的单元格

在我们开始之前,请确保您已安装IronXL。 您可以使用 pip 安装它:

pip install ironxl
pip install ironxl
SHELL

这将为我们的项目安装IronXL。

加载 Excel 工作簿

第一步是将Excel工作簿加载到内存中。 我们将加载以下Excel文件并在本教程中使用它。

如何使用Python合并Excel文件中的单元格:图1 - Excel文件输入

以下代码将加载我们项目中的现有工作簿。

from ironxl import *  # Import entire module from ironxl for Excel operations

# Set license key for IronXL (Replace the license key with an actual valid key)
License.LicenseKey = "IRONSUITE.XYZ.ABC.COM.15796-DEPLOYMENT.TRIAL-5X73V4.TRIAL.EXPIRES.27.MAY.2024"

# Load existing workbook
workbook = WorkBook.Load("test_excel.xlsx")
from ironxl import *  # Import entire module from ironxl for Excel operations

# Set license key for IronXL (Replace the license key with an actual valid key)
License.LicenseKey = "IRONSUITE.XYZ.ABC.COM.15796-DEPLOYMENT.TRIAL-5X73V4.TRIAL.EXPIRES.27.MAY.2024"

# Load existing workbook
workbook = WorkBook.Load("test_excel.xlsx")
PYTHON

上述Python代码演示了IronXL的用法,这个库用于处理Excel文件。 在从IronXL导入必要的模块后,提供一个许可证密钥以认证库的使用。 您可以从IronXL试用许可证中购买您的免费许可证密钥。 然后使用Load方法打开名为"test_excel.xlsx"的Excel工作簿。 此工作簿可能包含具有数据或格式的各种工作表。 通过将其加载到脚本中,您可以以编程方式操作其内容。 这包括诸如读取数据、修改单元格值或创建全新工作表的任务。 该库支持包括XLSX, XLS, XLSM, XLTX, CSV和TSV在内的各种文件格式,使其在处理不同类型的Excel文件时得心应手。

选择Excel工作表

下一步是选择我们要处理的工作表。 以下代码将指定Excel电子表。

# Select worksheet at index 0
worksheet = workbook.WorkSheets[0]
# Select worksheet at index 0
worksheet = workbook.WorkSheets[0]
PYTHON

上面的行从加载的Excel工作簿中选择索引0的工作表,并将其分配给变量worksheet。 在Excel中,工作表是工作簿中的单独标签页,您可以在其中组织和操作数据。 通过引用索引0的工作表,您将访问工作簿的第一个工作表,因为Python中的索引通常从0开始。这样您可以执行特定于该工作表的操作,例如读取数据、修改单元格值或应用格式。

合并Excel文件中的特定单元格

现在我们已经加载了工作簿并选择了工作表,让我们定义要合并的特定单元格范围。 在我们选择的工作表中,有一列包含国家名称。 对于某些客户,国家名称相同,如"United States"。 我们将在Excel中合并这些特定实例中的单元格。 以下代码将为特定范围执行合并操作。

# Merge cells within specified ranges
worksheet.Merge("E5:E7")
worksheet.Merge("E9:E10")

# Save workbook to retain changes
workbook.Save()
# Merge cells within specified ranges
worksheet.Merge("E5:E7")
worksheet.Merge("E9:E10")

# Save workbook to retain changes
workbook.Save()
PYTHON

这些代码行利用Merge方法合并选定工作表中的单元格。 第一行将E5到E7的单元格合并,可能用于在国家列中整合与"United States"相关的数据。 同样,第二行将E9到E10的单元格合并,用于另一组具有相同国家值的数据条目。 在合并后,调用Save方法以保存对工作簿所做的更改。 此操作确保合并的单元格在Excel文件中被保留。

Merge方法用于合并一系列单元格。 此操作合并单元格而不擦除任何现有值或数据。 然而,只有合并单元格区域中第一个单元格的值会显示。 尽管如此,合并单元格的值在IronXL中仍然可访问。

合并后的单元格可以在给定输出中看到。

如何使用Python合并Excel文件中的单元格:图2 - Python合并单元格Excel

检索合并的区域

Excel中合并的区域指的是合并成一个单元格的连续块。 以编程方式检索合并的区域可以识别并处理工作表中的这些区域。 此信息对于数据分析、格式调整或确保合并单元格的准确数据操作等各种任务有用。 以下代码将从Excel工作表中检索合并的区域。

# Print merged regions in the worksheet
print("Merged Regions are:")
retrieveMergedRegions = worksheet.GetMergedRegions()
for mergedRegion in retrieveMergedRegions:
    print(mergedRegion.RangeAddressAsString)
# Print merged regions in the worksheet
print("Merged Regions are:")
retrieveMergedRegions = worksheet.GetMergedRegions()
for mergedRegion in retrieveMergedRegions:
    print(mergedRegion.RangeAddressAsString)
PYTHON

上面的代码首先打印一个标题,指示与合并区域相关的输出的开始。 然后使用GetMergedRegions()方法从指定的工作表中检索所有合并区域,并遍历每个合并区域。 在循环中,它使用RangeAddressAsString将每个合并区域的地址作为字符串打印出来。 这提供了工作表中所有合并区域的清单,有助于执行诸如识别合并区域以进行数据分析、格式调整或在Excel文件中进行针对性操作等任务。

之前合并的单元格为:

如何使用Python合并Excel文件中的单元格:图3 - 合并区域输出

在Excel文件中取消合并单元格

在Excel文件中取消合并单元格涉及到逆转合并过程,并将先前合并的单元格拆分为各个单元格。 要使用IronXL在Excel文件中取消合并单元格,您可以使用Unmerge方法。 以下是实现方法:

# Unmerge cells within specified ranges
worksheet.Unmerge("E5:E7")
worksheet.Unmerge("E9:E10")

# Save workbook to retain changes
workbook.Save()
# Unmerge cells within specified ranges
worksheet.Unmerge("E5:E7")
worksheet.Unmerge("E9:E10")

# Save workbook to retain changes
workbook.Save()
PYTHON

在上面的代码片段中,Unmerge方法用于取消合并指定范围内的单元格,特别是针对E5:E7和E9:E10范围。这一操作恢复了这些范围内单元格的独立性,允许单独操作其内容。 最后,调用Save方法以确保更改反映在Excel工作簿中。

如何使用Python合并Excel文件中的单元格:图4 - 取消合并结果文件

结论

总之,Python结合IronXL简化了在Excel中合并单元格的任务,增强了数据组织和可视化工作。 IronXL的广泛功能、丰富特性和用户友好界面让用户能够无缝地操作Excel文件,从加载工作簿到以编程方式合并特定的单元格范围。 提供了供探索的免费试用和全面的许可选项,IronXL为寻求在Python应用程序中高效数据管理的专业人士提供了一个引人注目的解决方案。

常见问题解答

如何使用 Python 在 Excel 中合并单元格?

您可以使用 IronXL 库通过 Python 在 Excel 中合并单元格,方法是加载工作簿和工作表,然后将 Merge 函数应用于所需的单元格范围,例如 worksheet.Merge('A1:B2')

使用 Python 是否可以在 Excel 中取消合并单元格?

是的,使用 IronXL,您可以应用 Unmerge 方法取消合并 Excel 中的单元格,例如 worksheet.Unmerge('A1:B2')

合并单元格的步骤是什么?

要使用 IronXL 合并单元格,请首先安装库,加载您的 Excel 工作簿,选择工作表,并将 Merge 函数应用于您要合并的特定单元格范围。

IronXL 可以识别 Excel 表中的合并单元格区域吗?

是的,IronXL 可以使用 GetMergedRegions() 方法识别合并的单元格区域,该方法提供工作表中合并区域的列表。

IronXL 为在 Python 中操作 Excel 文件提供了哪些好处?

IronXL 提供了跨平台兼容性、支持各种 Excel 格式、直观的 API 来读写数据、样式化单元格以及使用公式进行计算等好处。

如何在 Python 项目中安装 IronXL?

您可以使用 pip 命令在您的 Python 项目中安装 IronXL:pip install ironxl

IronXL 是否支持多种 Excel 文件格式?

是的,IronXL 支持包括 XLSX、XLS、XLSM、XLTX、CSV 和 TSV 在内的多种 Excel 文件格式,使其在不同的数据管理需求中具有多样性。

我可以在购买许可证之前试用 IronXL 吗?

是的,IronXL 提供免费试用,可以让用户在决定购买许可证之前探索其功能和能力。

Curtis Chau
技术作家

Curtis Chau 拥有卡尔顿大学的计算机科学学士学位,专注于前端开发,精通 Node.js、TypeScript、JavaScript 和 React。他热衷于打造直观且美观的用户界面,喜欢使用现代框架并创建结构良好、视觉吸引力强的手册。

除了开发之外,Curtis 对物联网 (IoT) 有浓厚的兴趣,探索将硬件和软件集成的新方法。在空闲时间,他喜欢玩游戏和构建 Discord 机器人,将他对技术的热爱与创造力相结合。