我有一点不同的要求。我试图找到一个解决方案,我需要VBA代码转到特定的行号,然后在对话框中返回该特定行的值。我有一个解决方法,因为我通过使用= Row()将列A中的每个单元格与相关的行匹配,然后将单元格返回到右侧,但我想知道是否存在更优雅的解决方案,并消除额外的列,只查找行号? 干杯 ANQ
答案 0 :(得分:1)
<强>功能强>
使用Application.Caller.Row
获取行。此示例将消息来自第1列的值,该行包含包含调用此函数的公式的单元格。
MsgBox(ws.Cells(Application.Caller.Row, 1))
<强>宏强>
遍历您的行并处理您需要的内容。这是一个循环并向第1列中的值发送消息的示例。
Dim ws As Worksheet
Set ws = ActiveWorkbook.Sheets("Sheet1")
Dim iRow As Integer
'You starting row in the actual sheet
iRow = 1
Dim iEndRow As Integer
'Set this.
iEndRow = 100
For iRow = 1 To iEndRow Step 1
'loop through each row.
'message what's in column 1 for this row.
MsgBox (ws.Cells(iRow, 1))
Next iRow