Powershell 使用文件夹路径计算excel行数

Powershell 使用文件夹路径计算excel行数,powershell,Powershell,我有一个名为客户的文件夹,根据每个客户的名称有多个文件夹,在每个客户下我有excel表格,表格中按行包含信息 我想将此文件结构提取到excel中,其中包含每个excel中包含的文件路径和行数 我可以使用下面的过程列出文件名 按Win-E打开Windows资源管理器并找到需要文件列表的文件夹 按住Shift键,右键单击文件夹并选择此处打开命令窗口。这只适用于文件夹,而不适用于库。 库指向特定文件夹,因此请选择位于的文件夹 在库图标下。如果库指向驱动器,请右键单击 文件夹树中的驱动器号 键入不带引号

我有一个名为客户的文件夹,根据每个客户的名称有多个文件夹,在每个客户下我有excel表格,表格中按行包含信息

我想将此文件结构提取到excel中,其中包含每个excel中包含的文件路径和行数

我可以使用下面的过程列出文件名

  • Win-E打开Windows资源管理器并找到需要文件列表的文件夹

  • 按住Shift键,右键单击文件夹并选择此处打开命令窗口。这只适用于文件夹,而不适用于库。 库指向特定文件夹,因此请选择位于的文件夹 在库图标下。如果库指向驱动器,请右键单击 文件夹树中的驱动器号

  • 键入不带引号的
    dir/b>dirlist.txt
    ,然后按Enter。这将创建一个仅包含文件名的列表。包括文件大小和 日期,改为键入
    dir>dirlist.txt
    。将文件也包括在 子目录,键入
    dir/b/s>dirlist.txt
    以创建目录列表 具有完整目录结构名称的文件,例如 C:\folder\subdirectory\file.txt

  • 打开Microsoft Excel并按Ctrl-O键,弹出“打开”对话框窗口

  • 导航到包含文件的文件夹。单击文件类型下拉菜单并选择文本文件(.prn、.txt、*.cvs)。 双击dirlist.txt将其打开

  • 在文本导入向导窗口中单击“完成”,使用默认选项并将目录列表导入Excel


  • 请帮忙数数行。

    你的问题模棱两可。我删除了不必要/错误的标签。 Excel文件可以有多个工作表,因此您必须迭代/递归给定起始文件夹中的文件以及工作簿中的所有工作表。输出是一个具有所请求属性的表。应易于保存为csv

    $BaseFolder = "X:\Path\to\Customers"
    $xlCellTypeLastCell = 11 
    $AllSheets = New-Object System.Collections.Generic.List[object]
    $Excel = New-Object -com excel.application
    $Excel.DisplayAlerts = "False"
    $XLfiles = Get-ChildItem -Path $BaseFolder -Filter *.xls* -File -Recurse
    ForEach ($XLfile in $XLfiles) {
        $WorkBook = $Excel.workbooks.open($XLfile.FullName)
        for ($i = 1; $i -le $WorkBook.sheets.count; $i++){
            $Sheet = $WorkBook.Sheets.Item($i)
            $LastRow = $Sheet.UsedRange.SpecialCells($xlCellTypeLastCell).Row
    
            $Obj =  [pscustomobject][ordered]@{
                ExcelFPath= $XLfile.FullName
                Customer  = ($XLfile.Directory).Name
                ExcelFile = $XLfile.Name
                SheetNo   = $i
                RowCount  = $LastRow
            }
            $AllSheets.add($obj)
        }
        $Excel.Workbooks.Close()
    }
    $AllSheets | Format-Table -auto
    ## $AllSheets | Out-Gridview
    

    到目前为止你试过什么?你有没有已经看过的示例代码或链接?Linux似乎不适合处理excel文件。StackOverflow是帮助人们修复现有代码。在这里发布更多Qs之前,请阅读、、和。祝你好运,非常好。这就是我读了很多关于Powershell的文章的力量。谢谢分享!祝大家好运。