2011-08-18 75 views
1

我正在使用Excel 2010,並製作了UserForm,它使用ListBox控件顯示工作表(「InvoiceListIncome」)中的發票的完整列表,工作表包含13列和數千行,下面的示例圖像; 我遇到的問題是餘額行範圍(「InvoiceListIncome_Balance」)「顯示每個發票個人的餘額,我需要的是從第一個發票範圍(」InvoiceListIncome_Date「)開始的運行餘額,以便每個交易它添加了目前所有+發票以前爲該帳戶發票清單基於日期和帳戶的運行餘額

我目前使用宏。

Range("InvoiceListIncome_Balance").FormulaR1C1 = "=SUM(RC[-1])-SUM(RC[-2])" 

簡單地減去商品價格在G列在F列什麼報酬,但我似乎不知道如何按日期添加所有以前的餘額,我可以將它與客戶帳戶的總和範圍總和爲t他的標準或只是activerow。

我一直在試圖解決這個問題的幾天,任何幫助將非常感激,謝謝。

這是我需要的一個例子; enter image description here

+0

你可以試着解釋一些更具體的細節?這聽起來像是我可以幫助的事情,並朝着正確的方向前進。 – RonnieDickson

+0

謝謝Ronnie,我已經添加了一個我需要的例子。 – James

回答

1

假設你已經帳戶,價格,並在列A,d和E,分別有報酬的工作,與第2行中的第一行數據,請嘗試第2行中的以下公式:

=SUMIF($A$2:$A2,$A2,$E$2:$E2)-SUMIF($A$2:$A2,$A2,$D$2:$D2) 

將公式向下複製。這假定您的數據按照您所顯示的時間順序排列。

此外,如果此公式正在工作,您在第四行的所需列的底部有錯誤的符號?

+0

非常感謝Ronny,工作完美!,剛剛用A,E&F取代了A,D&E,它的工作原理與我設想的完全一樣,我完成了我的在過去的幾個星期中試圖弄清楚這一點,再次非常感謝你的幫助,非常感謝! ;) – James

0

你想要一個運行總數,所以你想在計算行n的餘額時加入行(n-1)的餘額。

根據您的第一圖片,做如下修改:

  • 公式G2:在G3 =F2-E2
  • 式:G3 =G2+F3-E3
  • 複製公式到列表的末尾;最後一個值是當前餘額

編輯

對不起...我似乎都忽略了突破記帳條件。嗯,這使得因爲只有一個公式,你需要一路走低更容易....

打破客戶(爲客戶提供了列進行排序),你會用下列公式

  • 式中G2:=IF(A2=A1,G1+F2-E2,F2-E2)
  • 複製式從G2到列表的末尾

如果this.account = previous.account然後calculate.running.total別的create.new.balance

這隻要你的第一個客戶的名稱是<>‘帳戶’:-)

+0

這不起作用,因爲它假設只有1個客戶並且添加了所有發票而不是每個客戶。 – James

+0

從我可以看到它仍然單獨添加餘額,而不是總結該帳戶的所有以前的發票,我不知道如何或在哪裏添加您提供的底部代碼; (如果this.account = previous.account then calculate.running.total else create.new.balance) 感謝您的幫助到目前爲止;) – James

+0

底部的代碼只是說明了什麼= IF(.. 。)正在做 - 你不要輸入任何地方 – MikeD