Excel 2010 VBA - 获取当前单元格的左侧单元格?

Com*_*low 2 excel vba excel-vba excel-2010

我的表是这样的:

| A | B | ...
---------
| 1 | a | ...
---------
| 2 |   |
---------
| 3 |   |
---------
| 4 | b |
---------
Run Code Online (Sandbox Code Playgroud)

我希望这是我的输出:

| A | B | ...
---------
| a |   | ...
---------
| 2 |   |
---------
| 3 |   |
---------
| b |   |
---------
Run Code Online (Sandbox Code Playgroud)

所以我循环列B,只要有值,B那么我应该替换相应的值A

到目前为止,我尝试过这样的:

Sub LoopRange()

   Dim rCell As Range
   Dim rRng As Range

   Set rRng1 = Sheet1.Range(A1, A1000)
   Set rRng2 = Sheet1.Range(B1, B1000)

   For Each rCell In rRng2.Cells
       If Not IsEmpty(rCell.Value) Then
          'SET THE VALUE OF THIS rCELL TO THE CELL THAT'S LEFT OF IT  
   Next rCell

End Sub
Run Code Online (Sandbox Code Playgroud)

我该怎么做呢?

Com*_*low 5

解决了!但看看brettdj的回答.我想这更好.

Sub LoopRange()

    Dim rCell As Range
    Dim rRng As Range

    Set rRng = Sheet1.Range("B1:B1000")

    For Each rCell In rRng.Cells
        If Not IsEmpty(rCell.Value) Then
            rCell.Offset(0, -1) = rCell.Value
        End If
    Next rCell

End Sub
Run Code Online (Sandbox Code Playgroud)