[函数传参问题] 我创建函数有两个参数, 第二个在函数内容获取的内容是空


PowerShell交流中心[函数传参问题] 我创建函数有两个参数, 第二个在函数内容获取的内容是空
0
criseli asked 7 年 ago

#只有OpenExcel 成功是, 才需要CloseExcel
Function CloseExcel($Excel, $ExFile)
{
if (!$Excel) {
Write-Host “Parameter Excel is null.”
return
}
$ExFile
if (!$ExFile) {
Write-Host “Parameter ExFile is null.”
return
}

$ExFile.save()
$ExFile.close()
$Excel.quit()
Release-Ref $ExFile
Release-Ref $Excel
return
}

 

这个$ExFile总是获取的为空,   当然传递的参数是对象,  我怀疑是被转换没了,  毕竟powershell参数转换时不知道怎么分配给函数内变量的

1 Answers
2
Best Answer
Mooser Lee 管理员 answered 7 年 ago

你的函数定义有问题,应该是
Function CloseExcel
{
param($Excel, $ExFile)
if (!$Excel) {
Write-Host “Parameter Excel is null.”
return
}
Write-Host “Excel = $Excel”
}
CloseExcel -Excel “I am in pstips.net” -ExFile “thanks”