[ 初めての方へ | 一覧(最新更新順) | 全文検索 | 過去ログ ]
『文字色、背景色を条件に指定範囲の合計を出すには?』(みい)
例えば、背景色赤の範囲の合計を簡単にだす方法はありますか?
こんばんは
具体的にどのような構成になっているのでしょう?
たぶん、シート関数ではできない? と思います。
4.0マクロでやるかVBAで行うことになると思います
もう少し教えていただけると解答も出やすいと思います
(尋)
おはようございます
4.0マクロで行う方法です。
これは作業列を使用します。
例えば、A1からA10までデータが入力されているとします
ここで、A1とA3が背景色が赤色と仮定し、
その他のセル背景色は無しとします。
B列が作業列として、
B1を選択して、挿入→名前→定義で名前定義のダイアログボックスが出てくると思います。
上の方に名前を、colr (名前は何でもいいです)と入力し
下の参照範囲に、=get.cell(63,a1)+now()*0 と入力してOKを押します
そして、B1に =colr (先ほど名前定義をした名前を=を付けて入れる)と入力してEnter
そうするとB1には 3 という数字でます、これが背景色赤のget.cell関数での戻り値です
あとはB10までフィルドラッグをしてコピー、すると背景色赤のところは3が返ってきて
それ以外の背景色なしのところは0が返ってくると思います。
あとは、C1に =SUMIF(B1:B10,3,A1:A10) と入力すると
背景色赤のところの合計が出ると思います。
他の色でも取得可能です、また、文字色からでも可能です。
get.cell関数の63を24にすれば文字の色から取得可能です
=get.cell(24,a1)+now()*0とすればOKです
計算しない場合は、F9を押せば再計算をします、行ってください
4.0マクロのヘルプはもう削除されているみたいですね残念ですが・・・・・
少し長くなってしまいました。面倒くさそうなのですが、ちょっとやってみてください
これはちょっと・・・となると後はユーザー関数になります。
マクロは後ほど書き込みします。
(尋)
こんばんは
ユーザー定義関数です。
標準モジュールに貼り付けてください
Function SumColor(範囲 As Range, 色番号 As Integer)
Application.Volatile
Dim i As Range
For Each i In 範囲.Cells
If i.Interior.ColorIndex = 色番号 Then
SumColor = SumColor + i
End If
Next i
End Function
使い方、
例えば、A1からA10にデータがあるとします
A1とA3が背景色赤になっているとします
B1に =SumColor(a1:a10,3) と入力してEnterで
指定範囲の背景色赤の合計が出ると思います。
これは、数式パレットにも対応してますのでそこからでも入力可能です
その他の色でも可能です。
赤=3・黄色=6・青=5・緑=10・・・・・・・・・・など
試してみてください。
もう見てないかな?
(尋)
実際にマクロコードを書いてありませんが
文字通り,使用範囲のセルを調査し,もし色が赤であった場合に加算していく
ようにすれば,簡単に合計が出ます。
(なお)
作ってみました。
ただし,背景色のみ対象です。
操作方法
1)計算したい範囲をドラッグして範囲していします。(その範囲の色が反転)
2)マクロを実行します。
すると,合計する対象の背景色を聞いてきますので,希望の色番号を入力します。
3)合計(和)が表示されます。
Sub test2()
Dim xx As Integer
Count = 0
xx = Application.InputBox("検索する色番号を入れてね。黒1、赤3、緑4、青5、黄6、桃7、ブルー8、茶9")
For Each c In Selection
yy = c.Interior.ColorIndex
If yy = xx Then
wa = wa + c.Value
End If
Next
response = MsgBox("合計結果は" & wa & " でした")
End Sub
どういうわけか,コードが改行されずに表示されています。
編集モードに入ると,ちゃんと改行されコードが正しく表示されますので
コードをちゃんと見たい場合は一旦,編集にしてください。(なお)
[なお]さん、コードを書く時は先頭に半角スペースを入れてください。
そうすれば、改行されます。
(kazu)
みいさんこんにちは
便利な合計方法の回答が紹介されましたが、返信がないので、解決されたのか確認できませんが
データ量が多くなければ、単純な手動操作で、Ctrlキーを押しながら目的のセルを選択して
ワークシートの下に表示されているコマンドバーを右クリックして「合計」を選択で表示されます。
この選択状態で「最大値、最小値、平均、データの個数、数値の個数」なども確かめられます。
(シニア)
[ 一覧(最新更新順) ]
YukiWiki 1.6.7 Copyright (C) 2000,2001 by Hiroshi Yuki.
Modified by kazu.