使用 PowerShell 将 Excel 中的每个工作表单独另存为独立的文件

导语:在日常工作中,我们经常需要处理 Excel 文件。本文介绍了如何使用 PowerShell 脚本将一个 Excel 文件中的每个工作表单独另存为独立的 Excel 文件,以提高工作效率。

1. 准备工作

在开始之前,请确保已经安装了 Microsoft Excel 并在 PowerShell 环境中启用了 COM 对象。

2. PowerShell 脚本

下面是执行该操作的 PowerShell 脚本:

bash 复制代码
# 导入 Excel COM 对象
$excel = New-Object -ComObject Excel.Application
$excel.Visible = $false

# 打开 Excel 文件
$workbook = $excel.Workbooks.Open("C:\Users\86182\Documents\WeChat Files\wxid_hkpktzc30d1621\FileStorage\File\2023-08\餐饮记分系统情况汇总(2023.8.6).xlsx")

# 遍历每个工作表
foreach ($worksheet in $workbook.Worksheets) {
    # 创建一个新的工作簿
    $newWorkbook = $excel.Workbooks.Add()
    # 将当前工作表复制到新的工作簿
    $worksheet.Copy($newWorkbook.Sheets[1])
    # 保存新的工作簿为独立的文件(以工作表名命名)
    $newFilePath = "C:\delphisource\mytools\mynewtools\output\" + $worksheet.Name + ".xlsx"
    $newWorkbook.SaveAs($newFilePath)
    # 关闭新的工作簿
    $newWorkbook.Close()
}

# 关闭并退出 Excel
$workbook.Close()
$excel.Quit()
[System.Runtime.Interopservices.Marshal]::ReleaseComObject($excel) | Out-Null

3. 使用方法

按照以下步骤使用 PowerShell 脚本:

C:\delphisource\mytools\mynewtools\Win64\Debug\mynewtools.exe

  1. 将脚本中的 "C:\path\to\input.xlsx" 替换为要处理的输入 Excel 文件的路径。
  2. 将脚本中的 "C:\path\to\output\" 替换为保存单独工作表的输出文件夹路径。
  3. 打开 PowerShell 终端。
  4. 将脚本粘贴到 PowerShell 终端中。
  5. 运行脚本。

脚本将打开指定的 Excel 文件,遍历每个工作表,并将每个工作表复制到一个新的工作簿中。然后,将新的工作簿保存为独立的 Excel 文件,文件名以工作表名命名,并保存在指定的输出文件夹中。

4. 总结

使用 PowerShell 脚本将 Excel 中的每个工作表单独另存为独立的文件可以大大提高处理大量工作表的效率。通过简单的准备工作和运行脚本,您可以轻松地将一个 Excel 文件拆分为多个独立的文件,以满足不同的需求。

希望本文对您在处理 Excel 文件时提供了帮助,让您的工作更加高效!如果您对 PowerShell 脚本有任何疑问或建议,请随时在下方留言。谢谢阅读!

相关推荐
LAM LAB4 天前
【shell】win10 Powershell字体美化
powershell
奔跑的呱呱牛4 天前
前端/Node.js操作Excel实战:使用@giszhc/xlsx(导入+导出全流程)
前端·node.js·excel·xlsx·sheetjs
奔跑的呱呱牛5 天前
xlsx 已停止维护且存在漏洞!推荐一个可直接替代的 npm 库
前端·npm·node.js·xlsx·sheetjs
humors2216 天前
AI工具合集,不定期更新
人工智能·windows·ai·工具·powershell·deepseek
fengyehongWorld13 天前
Powershell 自动安装Excel自定义标签页,开启宏
powershell
西西弗Sisyphus15 天前
PowerShell 配置为启动时自动激活 Conda 环境
conda·powershell
winfredzhang1 个月前
Python 从零打造桌面文件管理工具开发全过程实录与源码深度解析
python·pdf·视频·图片·docx·xlsx
夫唯不争,故无尤也1 个月前
curl与Invoke-RestMethod核心区别
后端·fastapi·powershell·curl
bu_shuo1 个月前
Windows电脑使用VSCode远程控制Windows主机方法记录
windows·vscode·ssh·powershell
SuperEugene1 个月前
Excel 上传解析 + 导出实战:Vue+xlsx 避坑指南|Vue生态精选
前端·javascript·vue.js·excel·xlsx·vxetable