【问题标题】:If worksheet name then如果工作表名称然后
【发布时间】:2021-10-27 23:56:07
【问题描述】:

我需要打开一个工作簿,它总是只有一个工作表。现在我需要检查工作表名称并设置打印范围。如果不是那个工作表名称,检查 nettxt 工作表名称等等。

这是我得到的:

$Excel = New-Object -ComObject Excel.Application
$Excel.visible = $true
$Workbook = $Excel.workbooks.open($RG)

If ($WorkSheets = $WorkBook.WorkSheets | where {$_.name -eq "Test1"}
    $Data = $workbook.Worksheets.Item(1)
    $Data.PageSetup.PrintArea = "C1:S60"

If ($WorkSheets = $WorkBook.WorkSheets | where {$_.name -eq "Test2"}
    $Data = $workbook.Worksheets.Item(1)
    $Data.PageSetup.PrintArea = "C1:S80"

我做错了什么?

【问题讨论】:

    标签: excel powershell


    【解决方案1】:

    搞定了:

    If ($WorkBook.WorkSheets | where {$_.name -eq "Test1"})
        {$Data = $workbook.Worksheets.Item(1)
        $Data.PageSetup.PrintArea = "A1:Q50"}
    
    If ($WorkBook.WorkSheets | where {$_.name -eq "Test2"})
        {$Data = $workbook.Worksheets.Item(1)
        $Data.PageSetup.PrintArea = "A1:R50"}
    

    【讨论】:

    • 为什么$WorkSheets = ..,既然你看不到,就在任何地方使用$WorkSheets
    • 对...刚改了。谢谢西奥!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-08-05
    • 2021-04-29
    • 1970-01-01
    • 1970-01-01
    • 2017-02-18
    • 1970-01-01
    相关资源
    最近更新 更多