关于Set-ExcelRange cmdlet使用Excel列符号(如E:G)的疑问
解决Set-ExcelRange引用列符号(如E:G)的问题
可以通过列符号(如E:G)引用列来设置格式,但你之前的写法有误,以下是两种可行的方案:
方案1:先通过Get-ExcelRange获取列范围
使用Get-ExcelRange根据地址字符串获取整列的Range对象,再传入Set-ExcelRange:
# 获取E到G列的Range对象 $columnRange = Get-ExcelRange -Worksheet $sheet -Address "E:G" # 设置对齐方式 Set-ExcelRange -Range $columnRange -HorizontalAlignment Right
方案2:直接给Set-ExcelRange传入地址字符串(结合-Worksheet参数)
无需单独获取Range,直接将列地址字符串传给-Range参数,同时指定工作表:
Set-ExcelRange -Worksheet $sheet -Range "E:G" -HorizontalAlignment Right
为什么你的原代码不生效?
你之前用$sheet.Cells["E:G"]的方式,返回的并不是整列的Range集合,而是单个Cell对象,Set-ExcelRange无法识别这种格式,因此无法批量设置整列的对齐方式。
内容的提问来源于stack exchange,提问作者Nash Pherson
相关产品推荐
相关产品推荐

