如果我使用PowerShell在Excel工作表中插入以下公式:
$worksheet.Cells.Item(2,3).Formula = "=DATEVALUE(SUBSTITUTE(LEFT(B2;FIND("" "";B2)-1); "".""; ""-""))"
单元格显示错误值#NAME?
而不是计算值。
但是,如果我转到单元格,请按F2(编辑公式)并按Enter键,然后显示计算出的值没有任何错误。
对此有何想法?我有什么遗失的东西吗?
答案 0 :(得分:0)
请使用以下命令尝试此操作。
$worksheet.Cells.Item(2,3).Formula = "=DATEVALUE(SUBSTITUTE(LEFT(B2;FIND($([char]34) $([char]34);B2)-1); $([char]34).$([char]34); $([char]34)-$([char]34)))"
答案 1 :(得分:0)
我遇到了同样的问题,this post 帮我找到了解决方案。
添加“_xlfn”。在每个 Excel 函数语句的前面为我修复了 #NAME 错误,例如:
$worksheet.Cells.Item(2,3).Formula = "=_xlfn.DATEVALUE(_xlfn.SUBSTITUTE(_xlfn.LEFT(B2;_xlfn.FIND("" "";B2)-1); "".""; ""-""))"