2016-08-17 119 views
1

我有以下表Excel的VBA代碼減去

Bills Amount Paid 

Food $100 No 

Gas $200 Yes 

Car $300 Yes 

Total $600 

Total left to pay: $400 

和我有下面的代碼

Sub Bills() 

    Range("C2").Select 
    Do Until IsEmpty(ActiveCell) 
     If ActiveCell = "Yes" Then Range("B6") = Range("B5") - ActiveCell.Offset(0, -1) 
     ActiveCell.Offset(1, 0).Select 
    Loop 

End Sub 

但只減去第一「是」,當我改變另一個爲「Yes 「我沒有看到是從新的數額減去它。我錯過了什麼?

目標:每當我付賬單並來到這裏,選擇「是」並運行代碼,它將從總數中扣除它,並告訴我我還有多少錢用於支付賬單。

預先感謝

+4

不要使用VBA它是沒有必要的。你可以簡單地用excel函數SUMIF來解決這個問題 – raemaerne

回答

4

假設B列是「金額」欄和C列的「付費」欄中,只需使用式中的細胞爲「左支付」

=SUMIF(C2:C4,"=NO",B2:B4) 
0

你可以只用一個Formula評估付費的Column

=SUMIF(C2:C4;"No";B2:B4)