我有需要創建某種循環的數據。基本上,我正在使用字符串搜索來搜索具有所需信息的列,然後根據各種標準進行求和。我的問題是數據是按月分隔的(使用數字命名;即:Jan = 01,Feb = 02等),我需要一種方法將所有信息合計到目前爲止。我使用的公式如下:創建Excel的麻煩Do Loop
=SUMPRODUCT(SUMIFS(INDEX('Program Data'!A:GA,0,MATCH("*"&AC7&" "&AC10&" -"&A8&" "&B15&"*",
'Program Data'!1:1,0)),'Program Data'!$M:$M,$A2,'Program Data'!$E:$E,B2:B6))
其中A8是包含所選月份的單元格。因此,讓我們說A8 = 08(八月)。我想對A8的所有先前值執行此公式,並將它們加在一起,向上累加直到 A8等於當前選擇。 (或雖然A8 < 09,但是這可以完成)
因此,假設A8 = 08,我希望它從A8 = 01開始,運行此代碼並找到值。然後運行A8 = 02,找到該值,然後將其添加到第一個值,繼續,直到我們得到A8 = 08,然後報告最終值。由於單位數月份是用兩位數字(即; 01,02,03等)編寫的,並使用前導0進行搜索,所以我認爲它的循環帳戶非常重要,直到我們得到兩位數的月份(10 ,11,12)....
沿東西線(這不是代碼,只是一般的思維過程):
Sub Loop1()
Dim x as integer
x=01
Do until x = Cell A8
(insert the formula above, but with "&A8&" = x)
x + 1 = x
End Sub
但即使是這種思想過程似乎並不將結果的公式值加在一起,所以我需要幫助。我不知道如何在excel中執行do循環,所以您提供的任何幫助都會受到真誠的讚賞。恐怕我不知道從哪裏開始,或者每個語句的邏輯順序。感謝您的期待!
編輯
請原諒我那可憐的描述,但願能闡明:
的代碼是一個表的一部分。單元格A8是一個下拉選擇,您可以在其中選擇要檢查的數字月份(01,02 - > 12)。該公式然後使用一組參考單元查找字符串,可以說「Rev Bud 08 -2013」(其中08來自您的選擇),然後查找具有該標題的列,然後執行sumifs。但我想要一個年初的數據,所以我希望它能爲每個x從x = 1開始一次優化公式,直到包括在單元格A8中選擇的任何值,然後將所有的結果一起執行並在我選擇的單元格中顯示該值,讓我們說單元格C50。所以我希望它可以從「Rev Bud 01 -2013」,然後「Rev Bud 02 -2013」這一欄開始,直到「Rev Bud [我的選擇] -2013」並添加所有這些一起。
見編輯到第二個代碼段。出於可讀性的目的,我將你的公式分成塊。在第三個公式字符串語句中,您將看到'x'變量。現在,每當它循環時,我都會隨着x的變化將一個公式添加到下一個公式中,並將所有內容都放入C1中。 –
當我運行這個時,我只是得到 「+ SUMPRODUCT(SUMIFS(INDEX('程序數據')A:GA,0,MATCH(」*「&AC7&」「&AC10&」 - 「&A&」「&B15&」*「,節目數據'!1:1,0)),'節目數據'!$ M:$ M,$ A2,'節目數據'!$ E:$ E,B2:B6))「 作爲文本值C1。我錯過了如何修改它或什麼? – Kara
對不起,看到我最近的編輯,我把我換爲X並擺脫了'製作公式文本'。 –