选择1个单元格以上Excel Powershell的范围

时间:2018-12-10 03:28:07

标签: excel powershell

我正在尝试使用excel数据自动创建图表。能够通过使用range.end选择范围。但是,我需要的范围是直到-1结束为止的选择,而且我不知道如何做到这一点。有什么建议吗?

这是我的简单代码的片段:

6 months rolling =
VAR period_end = 
    CALCULATE(
        MAX('Dimensions'[Month Start Date]),
        FILTER(
            ALL('Dimensions'[Year Week]),
            'Dimensions'[Year Week]=SELECTEDVALUE('Dimensions'[Year Week])
        )
    )

VAR period_till = 
    FIRSTDATE( 
        DATESINPERIOD(
            'Dimensions'[Month Start Date], 
            period_end, 
            -1, 
            MONTH
        )
    )

VAR period_start = 
    FIRSTDATE( 
        DATESINPERIOD(
            'Dimensions'[Month Start Date], 
            period_till, 
            -6, 
            MONTH
        )
    )

RETURN
    CALCULATE(
        SUM(Total_Sales),
        DATESBETWEEN(
            [Month Start Date], 
            period_start, 
            period_till
        )
    )

1 个答案:

答案 0 :(得分:0)

最后,您仍在使用Excel范围。您应该看看the documentation才能更多地了解这种类型的对象。

在那里,您将看到可以访问范围对象的RowColumn属性。然后,您只需执行“行-1”即可倒数第二行。

$xl = New-Object -ComObject excel.application
$xldirection = [Microsoft.Office.Interop.Excel.XLDirection]

$wb = $xl.workbooks.open($filename)
$wsData = $wb.worksheets.item(1)
$wsdata.activate()

$start = $wsData.Range("E25")
$end   = "E" + ($start.End($xldirection::xldown).row - 1) # new line
$data = $wsData.Range($start, $end)                       # amended line

$wschart = $wb.sheets.add();
$chart = $wschart.shapes.addchart().chart
$chart.setSourceData($data)