excel - 使用excel在powershell中打开SLK文件不保留公式
问题描述
我试图用 excel (office 365) 读取一个 SLK 文件。SLK 文件有两个单元格。一个包含“硬编码”值,另一个包含“5+LC(-1)”的公式。通过使用 excel 读取 SLK,它工作正常,我可以看到公式“5+LC(-1)”
现在,我想做一个 powershell 脚本来读取这个 SLK 文件。这是我所做的:
$FilePath = "C:\tex33.slk"
$excel = New-Object -comobject Excel.Application
$excel.Visible = $false
$excel.Application.DisplayAlerts = $false
$workbook = $excel.Workbooks.Open($FilePath)
# Print the formula
$workbook.sheets.item(1).activate()
$WorkbookTotal=$workbook.Worksheets.item(1)
$value = $WorkbookTotal.Cells.Item(1, 2).Formula2R1C1Local
$value
$workbook.Close()
我希望5+LC(-1)
在变量中看到公式$value
。但是,此变量包含此公式的结果,而不是公式的结果。你知道为什么我在 powershell 中看不到公式,而我在 Excel 上可以看到吗?另请注意,如果我对 xlsx 文件而不是 SLK 文件执行相同操作,则所有操作都按预期工作($value
包含公式)。
您是否认为这是因为我没有安装 PI Software,如手动打开 excel 文件允许公式运行,使用 VBScript 或 PowerShell 或 Python 的 win32com 打开 excel 文件没有?在这种情况下,我不明白为什么 Excel 成功地看到我的公式,而 powershell 失败了。
SLK文件很简单(可以看公式5+RC[-1]):
ID;PMP
F;DG0G10
B;Y1;X2
C;X1;K1
C;X2;E5+RC[-1];K6
W;N1;A1 1;C7 0 7
E
解决方案
推荐阅读
- java - 签名算法的算法约束检查失败:MD5withRSA
- android-studio - 材质 UI 主题
- java - 添加多个活动android studio时崩溃应用程序
- php - Ionic 4 POST 到 PHP 后端
- ruby-on-rails - 获取组的 Activerecord 计数(Rails 4.2)
- javascript - 等待同步函数是否同步返回一个值?
- python - 无法使用 python 2.7 和更新的 pyserial 3.4 设置 vpython(python 的视频)
- haskell - 使用 Applicative 和 Functor 的 Haskell 函数
- python - 在 Python 中拟合 sklearn.KNN 的内存错误
- javascript - 我无法在 AXIOS 中发出 GET 请求?