|
やりたいこと。
A列 B列 C列
1 X社支払予定 Y社支払予定
2 3200 300
3 500 1000
4 400 110
5 4100 700
6 700 2200
7 予定合計
8 済み合計
あらかじめ決められた各社への支払予定金額の表があります。予定合計は、Sum関数で合計するので問題はありません。この予定表をそのまま使って、支払った合計金額を、済み合計欄に自動計算したい。支払った金額には、そのセルを、例えば水色(ColorIndex=8)で着色することだけで区別しています。そのとき、済み合計を、次のようなユーザ定義関数で、処理しようとしましたが、うまく自動計算できません。
****************************************************************
'標準モジュール
Function ColoredSum(セル範囲 As Range, myColor As Integer)
Application.Volatile
myWork = 0
For Each myCell In セル範囲
If myCell.Interior.ColorIndex = myColor Then
myWork = myWork + myCell.Value
End If
Next
ColoredSum = myWork
End Function
******************************************************************
B8の式 =ColoredSum(B2:B6,8)
C8の式 =ColoredSum(C2:C6,8)
調べてみますと、Volatileは、着色する等のセルの書式変更には反応してくれないようです(着色し、金額を変更すると、自動計算してくれますが、、、)。
金額はいじらず、着色のみで自動計算してくれる何か、いい方法がないでしょうか?
よろしくお願いします。
|
|