VBA,对于每个循环,将偏移量增加1列

时间:2019-05-30 14:26:55

标签: vba

每个循环都有一个,如何将我的单元格输出递增一列?目前,这仅写入输出中的一个单元格。

Sub quarterly()

Dim result As String

rev = Sheets("fin").Range("B105:F105")

For Each x In rev:

    result = Replace(x, "M", "")
    Sheets("output").Cells(2, 2) = result

Next


End Sub

2 个答案:

答案 0 :(得分:3)

您可以使用计数器:

Sub quarterly()

dim j as long
j = 0

dim rev as range
rev = workSheets("fin").Range("B105:F105")

dim x as variant
For Each x In rev
    Dim result As String
    result = Replace(x, "M", "")
    Sheets("output").Cells(2, 2+j) = result
    j=j+1
Next


End Sub

答案 1 :(得分:1)

如果“目标”范围为空,则可以使用End(xlToLeft)并在任何写入单元格的位置单步执行一个单元格:

Sub quarterly()    
    Dim x, rev

    rev = Sheets("fin").Range("B105:F105").Value        
    With Sheets("output")
        For Each x In rev            
            .Cells(2, .Columns.Count).End(xlToLeft).Offset(, 1) = Replace(x, "M", "")
        Next
    End With    
End Sub