每5行增加行索引

时间:2018-05-03 10:59:03

标签: excel excel-formula

我想编写函数来从CutomersSupport Sheet获取值并每5行增加行索引

Wrong Function

我可以在这里使用什么功能?

2 个答案:

答案 0 :(得分:1)

将它放在一个单元格中并填写。

=INDEX(CustomersSupport!A:X, INT((ROW(1:1)-1)/5)+6, MOD((ROW(1:1)-1)*3, 15)+12)

可以通过将以下内容放入未使用列的顶部并填写来测试函数和数学。

=ADDRESS(INT((ROW(1:1)-1)/5)+6, MOD((ROW(1:1)-1)*3, 15)+12, 4, 1, "CustomersSupport")

enter image description here

答案 1 :(得分:1)

另一种方法是使用短宏将公式直接绘制到工作表中:

Sub formulaPainter()
    Dim rng As Range, arr, nStart As Long, nEnd As Long, i As Long
    Dim s As String, j As Long
    ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    Set rng = Range("B9")
    s = "=CustomersSupport!"
    nStart = 6
    nEnd = 120
    arr = Array("L", "O", "R", "U", "X")
    j = 1

    '''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
    For i = nStart To nEnd
        For Each a In arr
            rng.Offset(j - 1, 0).Formula = s & a & i
            j = j + 1
        Next a
    Next i
End Sub

在这种情况下:

  1. rng 是公式
  2. 的起始位置
  3. nStart 是起始编号
  4. nEnd 是结束号码
  5. arr 定义了一组列
  6. enter image description here