1

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

在此处输入图像描述

4

3 回答 3

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

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

于 2013-11-01T22:04:38.063 回答
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

输出

在此处输入图像描述

于 2013-11-01T20:24:39.823 回答
0

您能否发布屏幕截图或添加一些其他细节?

对于可能的解决方案,我想到了两件事:

1)使用文本到列(如果这是你要去的地方)或

2) 在第 8 列使用像 =LEFT(A1, 10) 这样的公式并向下填充(10 可以更改为字符串的第一部分需要分隔的任何内容)。

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

于 2013-11-01T20:08:39.383 回答