2009-09-18 117 views
1

我想用Excel和VBA將連續整數填充到數組傳遞給小計功能。我需要一個動態大小的連續ints數組。例如,當我使用數組(1,2,3,4,5)時,該函數起作用,但如果我嘗試使用動態調整大小的數組,則不起作用。用連續整數填充數組

我已閱讀了一些關於此的文章,但沒有一篇真的有效 - 有沒有其他人試過這個?

回答

1

我假設你的意思是小計方法。這適用於我,你必須將它與你正在做的事情進行比較。

Sub Macro1() 

    Dim aConsec() As Long 
    Dim i As Long 

    ReDim aConsec(1 To 2) 

    For i = 1 To 2 
     aConsec(i) = i 
    Next i 

    Selection.Subtotal GroupBy:=3, Function:=xlSum, TotalList:=aConsec, _ 
     Replace:=True, PageBreaks:=False, SummaryBelowData:=True 

End Sub
+0

乾杯,工作完美 – Echilon 2009-09-19 05:39:03

0

不使用動態數組...嘗試,如果完全是一個非常昂貴的操作

如果你知道你有多少emelemts需要使用ArrayList或類似的東西

他們調整大小,大小是正確的開始。

總額也連續數可以在不使用數組在所有的...

0

如果你想從N到M範圍的總和,然後使用這個公式:

(M * ((M + 1)/ 2)) - ((N-1)*(N/2))