excel - 使用 PowerShell 读取未安装 Office 的 Excel 文件

标签 excel powershell office-interop

我正在尝试使用 PowerShell 读取 Excel 文件。我的脚本在我的计算机上运行,​​但当我在未安装 MS Office 的服务器上运行它时,它会生成以下错误。客户端不会在服务器上安装MS Office。我怎么解决这个问题?

错误:

Retrieving the COM class factory for component with CLSID {00000000-0000-0000-0000-000000000000} failed due to the following error: 80040154 Class not registered (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))

脚本:

$objExcel = New-Object -ComObject "Excel.Application"

我尝试通过将 Microsoft.Office.Interop.Excel.dll 复制到服务器来加载脚本中的 Microsoft.Office.Interop.Excel.dll。但这没有帮助。

我已经尝试过这个解决方案this solution ,但它生成 microsoft.jet.oledb.4.0 提供程序未在本地计算机上注册

最佳答案

尝试EPPlus libary 。它是一个使用 Open Office Xml 格式 (xlsx) 读取和写入 Excel 2007/2010 文件的 .net 库。

至少有三个可用的 PowerShell 模块使用该库:

关于excel - 使用 PowerShell 读取未安装 Office 的 Excel 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30918273/

相关文章:

excel - 如何将 Excel M365 中多维动态数组的一部分与特定值的条件求和?

excel - Excel的 'Dependency-Chain'是增加还是减少?

python - 日期分类

regex - 为什么\p{Lu} 匹配小写字母?

powershell - 在调用osql或sqlcmd时使用powershell $ LastExitCode -1073741502

c# - 如何使用 Office Interop 在 PowerPoint 的自定义任务 Pane 中创建形状并将该形状添加到类别中

vba - 当多个数据单元格具有等效的标识单元格时,如何用同一单元格替换它们?

powershell - 参数powershell的自动完成值

c# - 如何使用 C# 删除 Excel 图表图例条目?

c# - 如何访问 docx 默认样式