3

好的,所以我有一堆表格格式的数据,如下所示:

  |A   | B             |
------------------------
1 |102 | a, b, d, f, g |
------------------------
2 |104 | a, c, e       |
------------------------

我是使用宏或使用 VBA 的新手,因此是否可以创建一个宏来单独将 B 列中的内容映射到 A 列,如下所示:

  |A   | B    |
---------------
1 |102 | a    |
---------------
2 |102 | b    |
---------------
3 |102 | d    |
---------------
etc..

我在网上看了一堆 VBA 教程,没有看到这样的东西。

4

1 回答 1

3

试试下面的代码:

Sub sample()


    Dim lastRow As Long, i As Long, j As Long
    lastRow = Range("A" & Rows.Count).End(xlUp).Row

    For i = 1 To lastRow

        temp = Split(Cells(i, 2), ",")
        For j = LBound(temp) To UBound(temp)

             Cells(Cells(Rows.Count, 3).End(xlUp).Row + 1, 3).Value = Cells(i, 1)
             Cells(Cells(Rows.Count, 4).End(xlUp).Row + 1, 4).Value = temp(j)

        Next

    Next


End Sub

在此处输入图像描述

于 2013-06-06T19:28:10.613 回答