跳到主要内容

在 Make 中将 Excel 工作表拆分为多个文件:无需 VBA,只需 Dropbox 和 PDF4me

· 阅读需 21 分钟
SEO and Content Writer

PDF4me Excel - 分离工作表 这是一个“创建”操作,无需 VBA 或宏,即可将一个 .xlsx 文件拆分成每个工作表一个单独的工作簿。此四模块方案从 Dropbox 读取 Excel 文件,将其拆分成每个工作表一个的工作簿,遍历返回的数组,并将每个新的 .xlsx 文件及其各自的文件名上传回 Dropbox。

如果你曾经接手过一个包含二十个工作表的工作簿,并且需要将每个工作表都保存为一个单独的文件,你可能已经尝试过使用 VBA、付费的桌面分割工具,或者手动执行“移动或复制...到新工作簿”的操作。所有这些方法都假设你会坐在笔记本电脑前一次性完成操作。本教程将用一个定时运行的创建方案来取代所有这些繁琐的步骤,该方案通过 Dropbox 实现,并在首次设置后,无需任何点击即可生成干净的、按工作表划分的 .xlsx 文件。

流程概览
1. Dropbox - Download a File
Reads the source .xlsx from a fixed Dropbox path.
2. PDF4me Excel - Separate Worksheets
Splits the workbook into one .xlsx per sheet and returns an array.
3. Flow Control - Iterator
Loops over the Splitted Worksheet array so every item runs downstream.
4. Dropbox - Upload a File
Writes each per-sheet .xlsx into your output folder with its worksheet name.
简短版

导入 Dropbox 上的 Excel 文件,使用 PDF4me Excel - Separate Worksheets 功能处理,将返回的数组传递给迭代器,并将每个工作表对应的 .xlsx 文件上传到输出文件夹。共四个模块,无需 VBA 代码。可按计划每十五分钟运行一次,也可按需运行。

基于“为什么”的问答

为什么完全跳过VBA? VBA 依赖于桌面版 Excel 的安装、宏的启用,以及文件到达时有人坐在电脑前。而 Make 方案则没有这些限制。它在云端按计划运行,因此凌晨 3 点上传到 Dropbox 的工作簿会在 3 点 15 分之前自动拆分。

为什么要在 split 和 upload 之间使用 Iterator? PDF4me Excel - 分离工作表功能返回的是一个文件数组(每个工作表一个文件),而不是单个文件。Dropbox 上传每次只接受一个文件,因此迭代器会将数组拆分成单独的文件包,供上传模块一次处理一个文件。

为什么即使是欧洲版练习册,文化设置也始终保持为 en-US? 此设置控制数字和日期单元格的内部处理解析方式,而非存储方式。工作表内容逐字节保留,因此带有逗号小数点的德语发票仍会完整地保存到每个单独的工作表文件中。

为什么每个输出文件都会自动包含工作表名称? 迭代器会发出每个带有以下参数的项 File Name 属性已设置为源工作表的名称加上 .xlsx将其映射到 Dropbox 上传的文件名字段,即可得到类似这样的易于理解的输出结果。 Q1.xlsxQ2.xlsxQ3.xlsx 无需任何表达工作。


您将获得

输入: 一个 Excel 工作簿 /pdf4metest/Excel/Separate Worksheets/Separate.xlsx 包含多个工作表(Q1、Q2、Q3、摘要等)。 输出: 每个工作表一个 .xlsx 文件,拖放到 /pdf4meoutput/每个工作表都以其工作表命名。


你需要什么

  • 制造(原名 Integromat)打开制作免费方案每 15 分钟运行一次此方案,对于大多数 Excel 拆分任务来说已经足够了。
  • PDF4me API密钥获取您的 API 密钥首次添加 PDF4me Excel 操作时进行连接。
  • Dropbox 帐户任何层级都可以。你需要创建两个文件夹:一个用于存放源工作簿,一个用于存放拆分后的输出文件。
  • 一个用于测试的多工作表 Excel 文件任何包含两个或多个工作表的 .xlsx 文件。如果您手边没有这样的文件,请使用下面的示例。

先拿到样品。 在构建场景之前,请将源工作簿放入 Dropbox 输入文件夹中,以便触发器在第一次运行时可以看到内容。


流程概览

  1. Dropbox 下载文件 (触发因素和来源)。
  2. PDF4me Excel - 分离工作表 使用步骤 1 中映射的文件。
  3. 流程控制迭代器 包裹着返回的 Splitted Worksheet[] 大批。
  4. Dropbox 上传文件 将每个迭代器项的文件名和二进制文件映射出来。

完整流程概述

制作场景画布,显示从左到右连接的四个模块:Dropbox 下载文件(蓝色)、PDF4me Excel Excel 分离工作表(绿色)、流程控制迭代器(绿色箭头)和 Dropbox 上传文件(蓝色)。

总共四个模块。步骤 3 和步骤 4 之间的箭头呈扇形展开:源文件中的每个工作表对应一个上传文件。


步骤 1:如何在 Make 中从 Dropbox 获取 Excel 文件?

目前为止的流程: 没有,这是源模块。

添加一个 Dropbox - 下载文件 创建一个模块,并将其指向要拆分的工作簿。

  1. 搜索 Dropbox 在模块选择器中选择 下载文件
  2. 配置
    • 联系YnooxTestone (或点击) 添加 首次使用 Dropbox 进行身份验证)。
    • 文件选择方式Select a file
    • 文件/pdf4metest/Excel/Separate Worksheets/Separate.xlsx
  3. 点击 节省 运行该模块一次以确认文件下载。

Dropbox 下载配置

在“创建”中配置 Dropbox 下载文件,连接设置为 YnooxTestone,“选择文件的方式”设置为“选择文件”,“文件”指向 /pdf4metest/Excel/Separate Worksheets/Separate.xlsx。

在此处固定单个文件路径,以便拆分操作能够确定性地运行。如果希望拆分操作由新文件触发,稍后可以切换到“监视文件”模式。

提示。 如果您希望每次创建新工作簿时都触发此场景,请将此模块替换为 Dropbox - 监视文件 指向同一个文件夹。其余流程保持不变,因为它们对文件对象的使用方式完全相同。


步骤 2:PDF4me Excel 分离工作表如何拆分工作簿?

目前为止的流程: Dropbox 下载文件。

添加 PDF4me Excel 行动 Excel - 单独的工作表 并将步骤 1 中的文件字节传递给它。它返回一个数组,其中每个元素都是一个打包成 .xlsx 的工作表。

  1. 添加模块,搜索 PDF4me Excel, 挑选 Excel - 单独的工作表
  2. 配置
    • 联系My PDF4me Excel connection (或点击) 添加 并粘贴您的 PDF4me API 密钥)。
    • 文件Map (开启)
    • 文件名1. File Name 来自 Dropbox 模块。
    • 文档1. Data 来自 Dropbox 模块。
    • 文化与语言环境en-US
  3. 保存。模块输出将包含一个 Splitted Worksheet[] 场景运行后,数组将返回。

PDF4me Excel 独立工作表配置

PDF4me Excel 模块已配置为 Excel - 单独的工作表:连接 我的 PDF4me Excel 连接,文件设置为映射,文件名已从步骤 1 映射,文件名和文档已从步骤 1 映射,数据、区域和语言设置 en-US。

文件名使用步骤 1 中的原始名称,以便下游日志保持可读性。文档包含 PDF4me 实际拆分的二进制文件。

参数参考

范围类型必需的它的作用例子
联系身份验证是的PDF4me API 连接。一次添加,即可在多个场景中重复使用。我的 PDF4me Excel 连接
文件名细绳是的源文件名 .xlsx 扩展程序。用于日志记录和下游映射。Separate.xlsx
文档二进制是的要拆分的 .xlsx 文件字节数。映射自任何先前生成文件的模块。1. Data
文化与语言环境细绳是的用于解析数值和日期单元格的区域设置。不会修改存储的值。en-US

这是执行分割操作的那一行代码。 该操作读取工作簿,遍历每个工作表,并将每个工作表生成的一个 .xlsx 文件放入一个名为 `<a>` 的数组中。 拆分工作表[]本模块之后的所有内容均为管道相关内容。


步骤 3:迭代器 - 将返回的数组转换为单独的运行

目前为止的流程: Dropbox 下载 + PDF4me Excel 独立工作表。

迭代器接受一个数组,并一次发出其中的一个元素,因此放在它后面的任何模块都会对每个元素运行一次。

  1. 添加模块,搜索 流量控制, 挑选 迭代器
  2. 配置
    • 大批7. Splitted Worksheet[] (来自 PDF4me 模块的输出)
  3. 节省。

迭代器配置

在 Make 中使用 Array 设置为 7 的 Flow Control Iterator。从 PDF4me Excel 模块输出映射的拆分工作表[]。

只需一行配置。Splitted Worksheet[] 前面的模块编号将与您的场景中 Make 为 PDF4me 模块分配的编号相匹配。


步骤 4:如何将每个拆分文件上传回 Dropbox?

目前为止的流程: Dropbox 下载 + PDF4me Excel 独立工作表 + Iterator。

添加结尾 Dropbox - 上传文件 并将迭代器的文件属性传递给它。由于它位于迭代器之后,因此每个工作表只运行一次。

  1. 添加 Dropbox - 上传文件
  2. 配置
    • 联系YnooxTestone
    • 文件夹/pdf4meoutput/
    • 文件Flow Control - Iterator (这会将迭代器的当前项直接映射到文件字段中 - 无需手动进行名称/二进制拆分)。
  3. 保存模块并保存场景。

Dropbox 上传配置

Dropbox 上传文件到 Make,连接 YnooxTestone,文件夹 /pdf4meoutput/,文件设置为流程控制 - 迭代器,以便每次迭代上传一个拆分的工作表。

选择流程控制 - 使用迭代器而不是分别映射文件名和数据,可以让 Dropbox 使用已分配给每个项目的 PDF4me 工作表名称。

提示。 如果您更愿意在文件名前添加前缀或后缀(例如, 2026-Q1.xlsx 而不是 Q1.xlsx),将文件切换回 地图 并用类似这样的表达式来构建名称 {{formatDate(now; "YYYY")}}-{{2.File Name}}


运行流程并验证

  1. 节省 右上角的场景。
  2. 点击 运行一次 在左下角面板中。
  3. 打开运行历史记录:四个模块都应显示绿色对勾。在第四个模块上,您会看到一个数字标记,其数值等于源文件中工作表的数量。
  4. 打开 Dropbox /pdf4meoutput/ 并确认每个工作表只有一个 .xlsx 文件。

你实际建造了什么? 一款云原生 Excel 数据拆分工具,无需在任何地方安装 Microsoft Excel。它采用相同的四模块模式(下载 + PDF4me Excel 操作 + 迭代器 + 上传),支持逐页 PDF 导出、基于行的 CSV 数据提取,以及任何其他 PDF4me 返回文件数组的 Excel 操作。只需替换中间模块,即可获得新功能,而无需修改底层代码。


无需重建即可添加的常见变体

触发新文件
将步骤 1 替换为 Dropbox 监视文件 指向同一个文件夹。现在,每个上传到 Dropbox 的工作簿都会在轮询间隔内自动拆分,无需手动操作。
将每张表格也转换为 PDF 格式。
插入一个 PDF4me - 转换为 PDF 该模块位于迭代器和 Dropbox 上传之间。每个工作表的 .xlsx 文件都会一次性生成工作簿和 PDF 文件。
分发到不同的文件夹
添加一个 路由器 在迭代器中,使用文件名筛选器(例如,以“EU”开头的表格)之后,转到 /eu/,‘我们’到 /us/一次分岔,多个目的地。
将每张表格通过电子邮件发送给不同的人
Gmail 发送电子邮件 或者 Microsoft 365 发送电子邮件使用 Google 表格中的工作表名称作为收件人查找键。

PDF4me + Make 与其他替代方案的比较

方法准备工作无人值守运行处理多标签工作簿成本
PDF4me + Make(本博客)四个模块,约10分钟是的,按计划或触发器执行。是的,任何标签页数量PDF4me 免费版及免费套餐
桌面版 Excel 中的 VBA 宏30-60分钟的复制粘贴加签名不,需要打开桌面版 Excel 并启用宏。是的免费但需手动操作
在线 Excel 分割工具每个文件上传耗时2分钟不,是按文件手动操作。是的免费,但数据将超出您的控制范围。
Alteryx / Power Query设置大约需要 1 小时,需要平台是的,但与工作站许可证绑定。是的企业许可证

常见问题

如何在不使用 VBA 的情况下将 Excel 工作表拆分成多个工作表?

使用类似这样的云操作 PDF4me Excel - 分离工作表 可在 Make、Zapier、n8n 或 Power Automate 中使用。该操作读取 .xlsx 文件字节,将每个工作表拆分成单独的工作簿,并返回一个可循环遍历的数组。无需宏、VBA 或本地安装 Excel。本演练中的完整四模块 Make 方案可在免费套餐上运行,每次拆分只需几秒钟。

如何自动将一个Excel文件拆分成多个文件?

指出 监视文件 模块位于新工作簿存放的文件夹中,链 PDF4me Excel - 分离工作表 之后,将返回的数组包装在一个 流程控制迭代器然后将每个项目上传回目标文件夹 Dropbox 上传文件现在,每个拖放到该文件夹中的工作簿都会在轮询间隔内自动拆分(免费计划为 15 分钟,付费计划速度更快)。

能否将多个 Excel 工作表分别保存为不同的文件?

Make 本身可以移动、重命名和重新上传 Excel 文件,但无法检查或操作工作簿中的内容。您需要一个 Excel 感知操作才能实现这些功能。 PDF4me Excel 连接器提供 Excel - Separate Worksheets这正是本教程所使用的操作。安装并连接后,Make 会将拆分操作委托给 PDF4me,并处理后续的流程编排。

PDF4me Excel - 分离工作表功能是否会更改工作表中的任何数据?

不。此操作针对的是工作簿结构,而不是单元格值。它会读取工作表,将每个工作表另存为一个独立的 .xlsx 文件,然后原样返回。每个工作表中的格式、公式、单元格类型、合并单元格和命名区域都会被保留。引用其他工作表的跨工作表公式在拆分后的文件中会失效(这是不可避免的,因为它们指向的工作表现在位于不同的工作簿中),因此如果您需要重新计算这些公式,请在之后添加单元格引用传递。


故障排除

即使文件包含多个工作表,迭代器也输出零个项目。

数组字段映射到了错误的输出。请确认您已选择 拆分工作表[] 来自 PDF4me Excel 模块,而不是单个模块 Doc Data 输出。如果数组选择器读取 Doc Data删除映射并从正确的源重新添加。

Dropbox上传失败,并显示“提供的文件不是有效文件”的错误信息。

当“文件”字段映射到文本值而不是迭代器的文件包时,就会发生这种情况。在“文件”字段中,选择 流程控制 - 迭代器 物品本身,而不是孩子。 File Name 然后,`make` 会将名称和二进制内容一起传递到字符串中。

每个输出文件都以“worksheet.xlsx”命名,并带有数字后缀。

源工作簿中存在名称重复或为空的工单。当工单名称缺失时,PDF4me 会回退到自动编号。请打开源 .xlsx 文件,为每个工单指定不同的名称,然后重新运行该场景。

场景在每次运行时都会重新分割同一个文件。

您仍在使用 下载文件 (每次运行都读取固定路径)。切换到 监视文件 对于触发器,或者添加一个 移动文件 Dropbox 上传后的模块会将源工作簿转换为 /processed/ 文件夹,因此下次投票不会发现任何新内容。


后续步骤

同样的四步模式(下载 + 使用 PDF4me 分割 + 迭代 + 上传)可以处理您需要构建的任何“一个文件输入,多个文件输出”的 Excel 自动化流程。