如何从工作表中读取值并检查.txt文件中的值

时间:2019-08-05 14:14:21

标签: excel powershell

使用Powershell,我需要遍历一列的每个单元格,并检查该值是否存在于另一个遍历.txt文件的循环中,在任何文件中,然后在电子表格中填充一个附加列,以指示哪些.txt文件包含值

到目前为止,我有一个Powershell脚本,该脚本可以从选定的目标位置浏览一组文件。该脚本允许您选择文件名,扩展名和内容。这部分很好,因为我希望能够遍历文件的一部分,但是我希望遍历它在文件中查找的$ SearchText值,并将其逐一更改为a的列A中的每个值。我在Excel中有工作表。一旦在要遍历的任何选定文件中找到值,它将在工作表中添加一列,并提供在其中找到的文件名。如果在多个文件中找到它,则将添加列每找到一个。

clear;
$Files = "";
$FileNameEnds = "";
$FileExt = ".txt";
$SearchText = "";



Foreach ($file in [System.IO.Directory]::GetFiles($Files,"*"+"$FileNameEnds."+$FileExt, [System.IO.SearchOption]::AllDirectories))
{
    $Textfile = [System.IO.File]::ReadAllLines($file);
    $FileContains = $false;

    foreach ($line in $Textfile.Split([System.Environment]::NewLine))
    {
        if($line.Contains($SearchText))
        {            
            $FileContains = $true;
        }
    }

    if ($FileContains)
    {
        Write-Host "Contains:" $file;
        Write-Host $FileContains
    }    
}

Write-Host "Done";

我想要一个成功的双循环,一个循环,用于将$ SearchText值设置为我拥有的Excel工作表中列中的每个单元格,一个接一个地循环,然后使用该值在给定的文件循环中进行搜索目的地,这是我已有的代码。

0 个答案:

没有答案