Arrays 检查Excel单元格是否包含数组项

Arrays 检查Excel单元格是否包含数组项,arrays,excel,powershell,Arrays,Excel,Powershell,我有一个Excel文件,其中有一列,包含简短的描述。我有一个数组,其中包含数字。我必须检测一个单元格是否包含任意数量的数组 我的代码如下所示: $CurrentCell = $openedworksheet.Cells.Item($i, 1).Value() $Array='1', '2', '3', '4' $a = 0 foreach ($numbers in $Array) { if ($numbers -match $currentCell) { $a = 1

我有一个Excel文件,其中有一列,包含简短的描述。我有一个数组,其中包含数字。我必须检测一个单元格是否包含任意数量的数组

我的代码如下所示:

$CurrentCell = $openedworksheet.Cells.Item($i, 1).Value()
$Array='1', '2', '3', '4'

$a = 0
foreach ($numbers in $Array) {
    if ($numbers -match $currentCell) {
        $a = 1
    }
    if ($a -eq 0) {
       Write-Host $currentCell
    }
}

我尝试了许多变化,但没有得到想要的结果。

非常感谢你们的帮助。最后的解决办法是:

$CurrentCell = $openedworksheet.Cells.Item($i, 1).text
$Array='1', '2', '3', '4'


foreach ($numbers in $Array) {
     if($CurrentCell.Contains($number)){
           write-host $currentCell
     }
}

:)

如果($Array.Contains($currentCell))
单元格也包含文本,并且数字只是文本的一小部分。将$Array值更改为类似“1”、“2”等。然后使用-like而不是-match。还有第二个,如果是这样的话,我建议先在Excel中直接计算出来,这样它会像你希望的那样响应,然后谷歌如何将特定的命令或方法“翻译”成PS例如,Excel有几十种方法来检查一个字符串是否包含另一个字符串。您应该使用哪一种取决于您的具体情况。您已经得到了一个解决方案来回答您的问题,然后您向原始问题添加了更多标准。先用Excel计算出你的确切问题,然后用谷歌搜索。如果您在任何地方都找不到解决方案。
Value
是一个属性,而不是一个方法,请从
.Value()
中删除括号。然后尝试
如果($numbers |?{“$currentCell.”包含($|)}{Write Host$currentCell}