如何在 Excel VBA 中使用命名单元格的行号
How to use the row number of a named cell in Excel VBA
我有一个工作表,我想在其中使用按钮添加行。我在多行上有多个按钮,每个按钮都应该在它们的位置添加一行。
问题是,每当添加新行时,我要添加行的位置都会发生变化。因此,我命名了要为每个按钮添加新行的单元格。
我无法获取单元格的行号,因此我可以选择添加新行的位置。自动柜员机我试过这个:
Sub Button2_Click()
Dim RowNum As Variant
Set RowNum = WorksheetFunction.Index(cell, 1, 0)
Rows(RowNum & ":" & RowNum).Insert Shift:=xlDown
Rows(RowNum - 1 & ":" & RowNum - 1).Copy Range("A" & RowNum)
Range("D" & 7, "L" & 7).ClearContents
End Sub
其中单元格是我要添加新行的单元格。
我在使用索引函数 return 将行作为数字时遇到问题。当我在调试中将鼠标悬停在 "cell" 上时,它显示 cell=empty.
希望这是清楚的,因为你可能会说我对这些东西不是很有经验。
谢谢:)
试试这个找到你命名的单元格:
rowToInsertIn=Application.WorksheetFunction.Match("MyCellName", Range("A:A"), 0)
当您使用 Set
将变体分配给 returned Application.Index
时,您实际上是在设置一个范围。您可以将其简化为简单地 return 单元格的行号,但您必须引用命名范围,就好像它是 Range object.
中的单元格地址一样
Sub Button2_Click()
Dim RowNum As Long
With ActiveSheet
RowNum = .Range("cell").Row
.Rows(RowNum).Insert Shift:=xlDown
.Rows(RowNum - 1).Copy .Range("A" & RowNum)
.Range("D" & 7, "L" & 7).ClearContents 'not really sure where the 7 comes in here
End With
End Sub
我有一个工作表,我想在其中使用按钮添加行。我在多行上有多个按钮,每个按钮都应该在它们的位置添加一行。
问题是,每当添加新行时,我要添加行的位置都会发生变化。因此,我命名了要为每个按钮添加新行的单元格。
我无法获取单元格的行号,因此我可以选择添加新行的位置。自动柜员机我试过这个:
Sub Button2_Click()
Dim RowNum As Variant
Set RowNum = WorksheetFunction.Index(cell, 1, 0)
Rows(RowNum & ":" & RowNum).Insert Shift:=xlDown
Rows(RowNum - 1 & ":" & RowNum - 1).Copy Range("A" & RowNum)
Range("D" & 7, "L" & 7).ClearContents
End Sub
其中单元格是我要添加新行的单元格。
我在使用索引函数 return 将行作为数字时遇到问题。当我在调试中将鼠标悬停在 "cell" 上时,它显示 cell=empty.
希望这是清楚的,因为你可能会说我对这些东西不是很有经验。
谢谢:)
试试这个找到你命名的单元格:
rowToInsertIn=Application.WorksheetFunction.Match("MyCellName", Range("A:A"), 0)
当您使用 Set
将变体分配给 returned Application.Index
时,您实际上是在设置一个范围。您可以将其简化为简单地 return 单元格的行号,但您必须引用命名范围,就好像它是 Range object.
Sub Button2_Click()
Dim RowNum As Long
With ActiveSheet
RowNum = .Range("cell").Row
.Rows(RowNum).Insert Shift:=xlDown
.Rows(RowNum - 1).Copy .Range("A" & RowNum)
.Range("D" & 7, "L" & 7).ClearContents 'not really sure where the 7 comes in here
End With
End Sub