获取命名范围的列号和行号
Get column and row number for named range
我在引用命名范围旁边的列时遇到问题(NamedRange 只有 1 列宽)。我使用以下代码插入一列:
.sheets("sheet1").Range("NamedRange:NamedRange").EntireColumn.Insert
这可行,但会在 NamedRange
之前插入该列。我加
没关系
shift:=xlToRight
或 shift:=xlToLeft
它无视我,将列插入左侧。
几个问题:
- 如何在 NamedRange 的右侧插入一列?
- 如何引用新列的第 1 行以将 header 放入我的新列?换句话说,如何找到新列单元格(row1,column???)的地址?以及如何提取 NamedRange 的新列地址?
how can I insert a column to the right of the NamedRange?
使用.Offset 来实现你想要的。
Thisworkbook.Sheets("Sheet1").Range("NamedRange").offset(,1).EntireColumn.Insert
how can I reference row 1 of the new column to put a header to my new column?
使用范围对象
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
我在引用命名范围旁边的列时遇到问题(NamedRange 只有 1 列宽)。我使用以下代码插入一列:
.sheets("sheet1").Range("NamedRange:NamedRange").EntireColumn.Insert
这可行,但会在 NamedRange
之前插入该列。我加
shift:=xlToRight
或 shift:=xlToLeft
它无视我,将列插入左侧。
几个问题:
- 如何在 NamedRange 的右侧插入一列?
- 如何引用新列的第 1 行以将 header 放入我的新列?换句话说,如何找到新列单元格(row1,column???)的地址?以及如何提取 NamedRange 的新列地址?
how can I insert a column to the right of the NamedRange?
使用.Offset 来实现你想要的。
Thisworkbook.Sheets("Sheet1").Range("NamedRange").offset(,1).EntireColumn.Insert
how can I reference row 1 of the new column to put a header to my new column?
使用范围对象
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