我知道如何合并单元格,并且此代码有效:
$MergeCells = $objWorksheet.Range("B1:C1")
$MergeCells.Select()
$MergeCells.MergeCells = $true
我遇到的问题是我正在IIS版本的
ForEach
服务器循环中执行此操作。因此,尽管我总是会知道列,但我不一定会知道行。该数字将有所不同。假设它到达列表
($x = 5)
上的第五台服务器,并且这些单元需要合并。我尝试了这个:$MergeCells = $objWorksheet.Range("B$x:C$x")
以为计算机会知道我的意思
$MergeCells = $objWorksheet.Range("B5:C5")
但是它什么也没做。没错,只有娜达。
我在这里和Google上进行搜索,但是在每个帖子中,人们都在合并单元格,使他们知道列和行是静态的。如我所说,我的行将是动态的。
有谁知道当行数变化时如何合并单元格?我已经能够在Excel中为单元格使用变量,而对于其他内容也可以使用。
最佳答案
在变量名中使用:
字符可指定范围。因此,PowerShell将$x:C
视为范围C
中的变量x
。
通过将x
括在花括号中,PowerShell将不会在字符串中向前看。
$MergeCells = $objWorksheet.Range("B${x}:C${x}")