我在引用命名区域旁边的列时遇到问题(NamedRange只有1列宽)。我使用以下代码插入一列:
.sheets("sheet1").Range("NamedRange:NamedRange").EntireColumn.Insert
这可行,但在NamedRange
之前插入列。如果我添加
shift:=xlToRight
或shift:=xlToLeft
它忽略了我并将列插入左侧。
几个问题:
答案 0 :(得分:2)
如何在NamedRange的右侧插入一列?
使用.Offset实现您的目标。
Thisworkbook.Sheets("Sheet1").Range("NamedRange").offset(,1).EntireColumn.Insert
如何引用新列的第1行以将标题放入我的新列?
使用范围对象
Sub Sample()
Dim rngNm As Range, NewRng As Range
Set rngNm = ThisWorkbook.Sheets("Sheet1").Range("NamedRange")
rngNm.Offset(, 1).EntireColumn.Insert
Set NewRng = rngNm.Offset(, 1)
Debug.Print NewRng.Address '<~~ New Columsn Address
Debug.Print NewRng.Cells(1,1).Address '<~~ 1st Cell in the range
End Sub