如何使用宏

时间:2018-01-21 13:09:54

标签: vba

我正在寻求帮助我有数千个单位ID,我需要手动复制和粘贴转置。如果列C Seq no,则出现以下情况。是相同的例如Seq 1然后我需要复制B列单元ID和粘贴转置到D列,我需要这样做到列的其余部分

enter image description here

1 个答案:

答案 0 :(得分:2)

试试这个:

Sub TransposeUnitID()
    Dim data As Variant, seq_number As Integer, rw as Long

    data = Range("B2:C21").Value '~~>Update as necessary
    seq_number = data(1, 2)
    rw = 2

    For i = 1 To UBound(data)

        If data(i, 2) <> seq_number Then
            seq_number = data(i, 2)
            rw = i + 1
        End If

        Range("B" & rw).End(xlToRight).Offset(0, 1) = data(i, 1)
    Next i
End Sub

注意:

  • 以数组形式读取数据
  • 假设Seq已订购(例如)
  • 循环数组并跟踪Seq以打印UnitID以更正单元格