我正在尝试以编程方式在我的 Excel 工作表中的指定位置插入一个新行,尽管在网络上进行了大量搜索,但我无法找到实现此目的的方法。
以下代码成功插入了一个空列:
$xlShiftToRight = -4161
#Get list of files
$File = Get-ChildItem c:\path\to\file.xlsx
#Launch Excel
$XL = New-Object -ComObject Excel.Application
#Open the file and get the Data sheet
$WB = $XL.Workbooks.Open($File.Fullname)
$XL.Visible = $true
$Sheet = $WB.Worksheets.Item('Naira')
$objRange = $XL.Range("C3").EntireColumn
[void]$objRange.Insert($xlShiftToRight)
但是镜面反射的替代方法 - 使用
EntireRow
而不是 EntireColumn
才不是。问题
如何使用 PowerShell 在 Excel 文档中的另一个特定行之后插入一行?
最佳答案
仅仅改变范围是不够的。您还需要更改移动现有单元格的方向(插入整行时向右移动没有多大意义)。
改变这个:
$xlShiftToRight = -4161
...
$objRange = $XL.Range("C3").EntireColumn
[void] $objRange.Insert($xlShiftToRight)
进入这个:
$xlShiftDown = -4121
...
$objRange = $XL.Range("C3").EntireRow
[void]$objRange.Insert($xlShiftDown)
关于excel - 使用 PowerShell 在 Excel 文档中插入空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57960250/