Excel - 拆分列表

时间:2013-11-01 19:58:54

标签: excel excel-vba excel-2007 vba

我有一个大约300个项目的列表,我需要每8个单元格间隔,而不是一个接一个。我确信有一种简单的方法可以做到这一点,但是我的大脑让我失望了。我有一种感觉,我的术语受到了伤害,因此我无法找到答案。

enter image description here

3 个答案:

答案 0 :(得分:2)

=IF(MOD(ROW()+7;8)=0;INDEX(A:A;INT(ROW()/8)+1);"")

鉴于数据从A1开始,并且从第1行使用公式(coulmn并不重要)。

答案 1 :(得分:1)

尝试以下代码

Sub Main()


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

    For i = 1 To lastRow
        If i = 1 Then
            Cells(i, 5).Value = Cells(i, 1)
        Else
            Cells((i - 1) * 9, 5).Value = Cells(i, 1)
        End If
    Next

End Sub

<强>输出

enter image description here

答案 2 :(得分:0)

您可以发布截屏或添加其他细节吗?

我想到了两个可能的解决方案:

1)使用文本到列(如果你正在使用它)或

2)在第8列中使用类似= LEFT(A1,10)的公式并填充(10可以更改为需要分离的字符串的第一部分)。

提供一些额外的信息,我会再看看!