• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:背景色赤のセルに表示された数字の集計方法)

背景色赤のセルに表示された数字の集計方法

tom04の回答

  • tom04
  • ベストアンサー率49% (2537/5117)
回答No.1

こんばんは! 参考になるかどうかわかりませんが・・・ VBAでの一例です。 手元にExcel2007がないので、Excel2003での方法になります。 Excel2003では条件付書式で色が設定されているセルを判断するのは大変だと思いますので、 コード内に条件付書式の条件を組み入れる方法です。 画面左下にある操作したいSheet見出し上で右クリック → コードの表示 → VBE画面が出ますので、 ↓のコードをコピー&ペーストしてマクロを実行してみてください。 (Alt+F8キー → マクロ → マクロ実行です) Sub test() 'この行から '変数の宣言(長整数型) Dim i, j, k, L As Long Dim vl As Variant '「i」はA列の1丁目から最終行まで(データが2行目からであれば、「1」を「2」に変更してください) For i = 1 To Cells(Rows.Count, 1).End(xlUp).Row '「L」はまで(BI列~CC列まで) For L = 61 To 81 '「j」は1から10まで(A列~J列まで) For j = 1 To 10 '「k」は11から60まで(K列~BH列まで) For k = 11 To 60 '条件付書式の条件をここで設定! 'K列~BH列の列番号がA列~J列のセル内数値にあり、かつ空白でないセルで 'K~BH列の値がBI~CC列の列番号より61小さいセルを検索して、 '条件にあうセルであれば「vl」として「1」ずつプラスしていく。 If Cells(i, k).Column = Cells(i, j) + 10 And Cells(i, k) = Cells(i, L).Column - 61 _ And Cells(i, k) <> "" Then vl = vl + 1 End If '次の「k」(列)へ Next k '次の「j」(列)へ Next j 'BH列の値は「vl」に! Cells(i, L) = vl '「vl」を「0」に! vl = 0 '次の「L」(列)へ Next L '次の「i」(行)へ Next i End Sub 'この行まで 尚、K~BH列には 0~20 までの数値しか入らない前提でやっています。 参考になれば良いのですが、 外していたらごめんなさいね。m(__)m

shizukko
質問者

お礼

解答ありがとうございました。 お返事が遅くなりました。 実際に試していたら時間がかかってしまいました・・・。 丁寧な解説ありがとうございます。 確かに集計は出来たのですが、セルの背景色が変更されなかったです。 でも前回の条件付きを設定すれば問題がなかったのですが マクロの実行にかなり時間がかかってしまうので ベストアンサーに選択できませんでした。 とても丁寧な解答で勉強になりました。 ありがとうございます。 また機会がありましたら宜しくお願い致します。

関連するQ&A

  • 入力した数字の対応セル背景色を変更する方法

    初めて質問させて頂きます。 過去の質問を調べましたが同じ内容のものが見つからず質問させて頂きます。 (同じ質問がありましたら申し訳ございません) エクセルで背景色を変えるものなのですが、 入力した数字により、指定範囲のセルの背景色を変更したいのです。 何色でもいいのですが、例えば赤に変更したいのです。 A1~BH1まで全て数字が入力されているので、背景色ではなく文字の色を赤でも構いません。       A   ・・・     J          K    ・・・     BH 1 1~50を入力   1~50を入力  1ならここのセル  50ならここのセル 数字を入力するセルは10個あり(A~Jまで)、そこにそれぞれ1~50までのどれかを入力すると それ以降のセルの50個(K=1,L=2,M=3,N=4,O=5,P=6・・・BH=50)の背景または文字色が変わるようにしたいのです。 うまく伝わっているかどうか不安なので、例を書きます。 A1=5 B1=7 C1=8 D1=10 E1=15 F=20 G=25 E=35 F=45 G=50 と入力すると、 O1 Q1 R1 T1 Y1 AD1 AI1 AS1 BC1 BH1 が背景又は文字色が赤になる。 ・・・ということです。 ちなみにこれは1行だけではなく1000行まであります。 マクロでも大丈夫ですが、 文法とかよくわからないのでそのまま使用出来るように書いて頂けると助かります。 (コピペで何度か使ったことはあります) 書き忘れましたが、当方のエクセルは2003,2007と両方持っています。 普段は2007を使用しております。 長くなってしまいましたが、どなたか宜しくお願い致します。

  • エクセルの色数字の集計

    エクセル2003です。 列をKからOまで結合していて、そこに黒数字と赤数字を入力してます。 行は27から49で、50に黒数字の集計 51に赤数字の集計 したいと考えてます。 結合してても、色数字ごとの集計は可能でしょうか? その場合、関数は何を使えばいいのでしょうか? 初心者なので、分かりやすく説明していただけると助かります。

  • EXCELのセルに入力した数字より背景色の塗りつぶしを行いたいのですが

    EXCELのセルに入力した数字より背景色の塗りつぶしを行いたいのですがどうすればよいのでしょうか? 閲覧ありがとうございます。 今仕事の資料を作成しています。 かなりの初心者ですので、宜しくお願いします。 使用ソフトのバージョンは EXCEL 2003 SP3になります。 現在表を作成しており、行に数字を入れ、数字にあわせ背景色をつけたいと考えています。 ※列で数値をCountifにより集計し、1がいくつ、2がいくつ・・・・とカウントしています。 セルには1~15の数字を入れ、それぞれ数字に合わせ自動で背景色を塗りつぶすことを行いたいと考えています。 書式の条件付書式により色をつけることを考えましたが、3つの条件までしか作ることが出来ずに困っています。 おそらくVBAやマクロ等を使用しないといけないと思いますが、可能なのでしょうか? プログラミングの知識が無いので、ぜひご教授のほどよろしくお願いします。

  • セルに特定の数字を入力すると背景に色が自動的につく?

    エクセルについてです。ちなみにVista使っています。 セルに1~10までの数字を入力したら、セルの背景が勝手に黄色に変わる。 セルに11~20までの数字を入力したら、セルの背景が勝手に赤色に変わる。 セルに21~30までの数字を入力したら、セルの背景が勝手に青色に変わる。 こんなことをする機能ってありますでしょうか?

  • エクセルでセルの装飾毎に集計する方法は?

    エクセルでセルの装飾がありますが、 その装飾毎に集計する方法はないでしょうか? 入力されたセルの数を集計するには、COUNTAですが、 これを装飾毎に集計したいのです。 たとえば、横線は横線ごとに、赤色を付けたセルは赤色を付けたセルごとに その範囲にいくつあるのかを集計したいのです。 詳しい方、よろしくお願いします。

  • PHPで特定のセルの背景を赤に

    PHPで特定のセルの背景を赤に DBに1~100までの特定の数字が入っています。 まず、 テーブル内の各<TD>のタグの中に1から100まで順にセルを埋めています。 1つのセルに1つの数字を入れています。 1~100までのセルもPHPで書きだしています。 そのPHPで作成したテーブルと DB内の特定の100までの数字を照合し セルとDBで一致した数字のTDの背景色を赤にしたいです。 現在 "DB内の特定の数字と1~100までの数字の照合" ここの作業で悩んでいます。 1からの整数は$a DBからの整数は$b これで配列に取り出すところまでで行き詰っています。 照合させるにはIF文だと思うのですが、その中にどうかけばいいでしょうか?

    • ベストアンサー
    • PHP
  • マクロを使用した表において集計を自動表示する

    エクセルのマクロでABC集計表なるものを作成しています。ボタンを押す毎に下位に行が追加され表ができる形です。行を挿入する毎に右側の3列に設けたセルにA~C品の数量を記入し、その集計を各2行目のセル(色付きのセル)に表示できるようにしたいと考えています。例えばA品の集計をK6に”=SUM(k7:k7)”として、ボタンを押して下へセルを追加しますと、集計が正しくされず、計算式を確認すると”=SUM(k8:k8)”となっており、数列1のk7が固定されていません。 マクロ文を入れないとできないのでしょうか、ご教授下さい。よろしくお願いします。

  • 再質問、赤の数字の合計と緑の数字の合計

    セルE2~E17とセルI2~I17の中に赤で書かれた数字と緑で書かれた数字があります。その中で、赤で書かれたセルの合計でなく、赤で書かれた数字の合計をセルK13に。また、緑で書かれたセルの合計でなく、緑で書かれた数字の合計をK15にに表示するにはどのようにすればよいですか。よろしくお願い致します。

  • 背景色の有無を判断をして別のセルに「1」と入力

    任意の行を見やすくするために背景色を塗りつぶしてあります。 その塗りつぶされている行だけ、集計対象としてフラグを立てたいのですが、1シートのレコード数も大量なのでマクロでやりたいと思っています。 背景色の指定されている行は、「集計対象」という名前の別のセルに「1」とフラグを立てる方法を教えて下さい。 宜しくお願いします。

  • Jtableの特定のセルの背景色や文字色について

    Jtable内部の特定のセルの背景色や文字色、フォントの変更に関して質問があります。25行30列のJtableの20行20列目のセルの背景色だけ赤色にしたい場合、具体的にどの様にプログラミングすれば良いでしょうか? サンプルソースなどを教えてくださるとありがたいです! javaに関して詳しい方、ぜひともお力を貸してください!

    • ベストアンサー
    • Java