
我知道這可能是一個超級簡單的問題,但我不知道如何在谷歌中表達它,所以我可以自己找到答案。我有一個 Excel 電子表格,它基本上是一個購物清單:
Apples--------$1.00
Bananas-----$2.25
Carrots-------$1.75...
我需要知道的是如何在下一列中建立一個運行小計,它會告訴我添加每個項目後的總數是多少。這將使電子表格現在看起來像這樣:
Apples--------$1.00--------$1.00
Bananas-----$2.25--------$3.25
Carrots-------$1.75--------$5.00...
到最後,我會喜歡能夠添加新的商品和價格,並讓它自己計算運行小計,但我會滿足於它能夠處理現有的列表,如我所示。我有什麼想法可以做到這一點嗎?
答案1
一個簡單的方法是使用SUM
具有絕對起始位址但結束位址隨著級數擴展複製公式而變化的公式。
假設價格位於列中B
並且起始於B1
,則放置=SUM($B$1:B1)
在運行總計列的第一個儲存格中。然後選擇單元格,以便您在其右下角看到夾具。抓住它並向下拖曳,直到運行總計列中的條目與項目價格列中的條目一樣多。
Excel 將自動調整公式,使其從專案價格列的頂部向下求和到與執行總計列中的目前儲存格相同的等級。當您透過拖曳擴充系列時,公式中的美元符號會阻止調整起始儲存格,但結束儲存格會自動調整,因為它的位址上沒有美元符號(它是相對位址)。
答案2
BenN 的出色答案可能是我將如何處理這個問題,但這裡有另一個想法,只是為了給您一個可以在其他特定情況下工作的結構:
假設價格位於 B 列中,運行總計位於 C 列:放置=B1
在運行總計列的第一個儲存格中,C1。然後放入=C1+B2
單元格中C2。 這會將新值加到先前的運行總計中。選擇單元格C2這樣你就可以看到右下角的黑色方形小夾子。抓住該方塊並向下拖曳,直到運行總計列中的條目與項目價格列中的條目一樣多。 (雙擊那個小方塊也會自動填滿。)
答案3
一種更複雜但另類的方法,略有不同:
ABCDE 商品價格 金額 $2.50 總和 蘋果 1.00 美元 2.5 香蕉 $2.25 胡蘿蔔 1.75 美元
D1中的公式為=SUMPRODUCT(B2:B4;C2:C4)
您也可以新增
=COUNTIF(A:A;"<>")-1
D2,輸入# of items listed
E2(在 D2 右側),然後將 D1 變更為:
=SUMPRODUCT(INDIRECT("B2:"&CELL("位址";OFFSET(B2;D2-1;0)));INDIRECT("C2:"&CELL("位址";OFFSET(C2;D2-1;0) ) )))
...列表更新最終將像輸入商品、價格和任何金額一樣簡單。
隨著「商品數量...」的更新,新商品旁邊的欄位中的價格和金額將包含在 D1 的總和中。
怎麼運作的:
COUNTIF()
在 D2 中將告訴有多少行已填入行;也就是說:它包括標題行,該標題行在-1
最後從總和中「刪除」。
使用OFFSET()
將產生對 B2(和 C2)下方的儲存格 D2 行的“引用”,並按“-1”調整以不包括最後一項下方的儲存格。
然後,引用將轉換為文本,CELL()
以便可以將其附加到"B2:"
...&
使用
生成的文本字串,INDIRECT()
將創建SUMPRODUCT()
完成其任務所需的內容。
小菜一碟,不是嗎? ;-)