Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/28.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在一系列单元格中循环时,如何获取当前单元格编号(Excel VBA)_Excel_Vba - Fatal编程技术网

在一系列单元格中循环时,如何获取当前单元格编号(Excel VBA)

在一系列单元格中循环时,如何获取当前单元格编号(Excel VBA),excel,vba,Excel,Vba,我试图在一系列单元格中循环时获取当前单元格编号 For Each i In Sheet3.Range("A3:A213") msgbox(Sheet3.Range("B"&currentcellnumberinloop).Value) Next 其目的是从同一行中的另一个单元格(如A1和B1)中检索值 试试这个 Dim i as Integer For Each i In Sheet3.Range("A3:D213").Rows.Count msgbox(S

我试图在一系列单元格中循环时获取当前单元格编号

For Each i In Sheet3.Range("A3:A213")

  msgbox(Sheet3.Range("B"&currentcellnumberinloop).Value)

Next
其目的是从同一行中的另一个单元格(如A1和B1)中检索值

试试这个

Dim i as Integer

    For Each i In Sheet3.Range("A3:D213").Rows.Count
     msgbox(Sheet3.Range("B" & i).Value)
    Next i

在你的代码中,变量i是一个范围类型,因此你必须这样对待它。您可以使用偏移量来获取与您的i地址相关的内容,如:

For Each i In Sheet3.Range("A3:A213")

  MsgBox (i.Offset(0, 1).Value)

Next i

i
可能被声明为范围对象(或变量)。因此,要获取行号并检索相邻
B
列中的值,必须调用
i
对象的
.row
方法

Sub ForEachAndFor()

    Dim i As Range

    For Each i In Sheet3.Range("A3:A213")
        MsgBox Sheet3.Range("B" & i.Row).Value
    Next

End Sub
您还可以使用
偏移量(有多少行向上或向下,多少列向左或向右)

用正数表示向下的行,用负数表示向上的行

这同样适用于列,使用
-
导航到当前单元格的左侧,使用正数导航到当前单元格的右侧

Sub ForEachSub()

    Dim i as Range

    For Each i in Sheet3.Range("A3:A213")
        MsgBox i.Offset(0, 1).Value
    next i 

End Sub