使用 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 脚本有任何疑问或建议,请随时在下方留言。谢谢阅读!

相关推荐
H轨迹H3 天前
一文学会powshell使用及功能
网络安全·渗透测试·powershell·红队全栈
tiandyoin4 天前
删除 C 盘空文件夹--递归删除
脚本·batch·powershell·空文件夹
JUNIOR_MU11 天前
【VMware VCF】管理 VCF 环境中组件的密码策略。
powershell·vcf·vmware cloud foundation·powervcf·password management·password policy·password expiration·password complexity·account lockout
Ztiddler12 天前
【CMD、PowerShell和Bash设置代理】
开发语言·深度学习·github·bash·powershell·代理·cmd
geyee1 个月前
win11 下 利用 PowerShell 提取 wps 表格中嵌入的图片
wps·powershell
程序猿进阶1 个月前
为什么数学常数在 powershell 中以不同的方式截断?
java·linux·服务器·前端·后端·面试·powershell
云计算练习生1 个月前
命令行工具PowerShell使用体验
powershell·命令行工具·windows命令·windows功能·操作系统命令
JUNIOR_MU2 个月前
【VMware VCF】使用 PowerShell 脚本管理 SDDC Manager 中的软件包。
powershell·包管理·vcf·vmware cloud foundation·sddc manager·powercli·powervcf·vcfbundlemanagement.ps1
盛夏绽放2 个月前
导出Excel的常用方法:从前端到后端的全面指南
开发语言·前端·javascript·python·excel·xlsx
安冬的码畜日常2 个月前
【工欲善其事】巧用 PowerShell 自动清除复制 PDF 文本时夹杂的换行符号
pdf·ai编程·powershell·shell编程·提示词工程·自动化脚本