excel - 在 PowerShell 中汇总 Excel 单元格
问题描述
我想将excel表格中的单元格数量汇总到数组单元格中。不幸的是,它将单元格中的数字保存为字符串,而不是实际总和。厌倦了将单元格类型更改为“值”,但它似乎不起作用。
如何从单元格中获取“双”类型的值?
$EntryAmmount[25] = $IncomingSummary1Worksheet.Cells.Item(69,18).Text + $IncomingSummary1Worksheet.Cells.Item(71,18).Text
在这种情况下,它会引发此错误(0.00 和 29,453.17 是单元格中的值):
Cannot convert value "0.0029,453.17" to type "System.Double". Error: "Input string was not in a correct format."
At C:...PS.ps1:148 char:5
+ $EntryAmmount[25] = $IncomingSummary1Worksheet.Cells.Item(69, ...
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo : InvalidArgument: (:) [], RuntimeException
+ FullyQualifiedErrorId : InvalidCastFromStringToDoubleOrSingle
解决方案
您需要将值转换为 double,在您当前的代码中 op_addition ( +
) 方法作用于字符串类型,因此将它们连接起来。
尝试:
$EntryAmmount[25] = [double]$IncomingSummary1Worksheet.Cells.Item(69,18).Text + [double]$IncomingSummary1Worksheet.Cells.Item(71,18).Text
推荐阅读
- autohotkey - 如何在自动热键中按 Ctrl + CapsLock = CtrlLock
- laravel - 使用 Flutter 和 Laravel 推送通知
- reactjs - 为什么状态更新时组件不会重新渲染?
- node.js - 当用户输入是节点 postgres 中的模式名称时清理用户输入
- html - 配置清单以抑制 Chrome 扩展中的 Webkit 目录警告?
- c++ - 无法理解在 C++ 中创建类时使用此参数
- loops - While 循环由于寄存器清除而无限运行(x86_64 程序集)
- ubuntu - 在 WSL2 内核关闭时运行脚本?
- reactjs - ReactJS - 尝试在 JSX 中调用函数时出现语法错误
- slack - 通过 Slack 斜杠命令打开网页