エクセル2012でセル内の背景色をカウントしたい。
未読分:4件
昨日以降(0) 2日前以降(0) 3日前以降(0) 4日前以降(0) 5日前以降(0)
近田 伸矢, 植木 悠二, 上田 寛
IEのデータ収集&自動操作のプログラミング本はこの1冊だけ!IEの起動やポップアップウィンドウ、表示を制御する基本的なコードはもちろん、テキストボックスやラジオボタン、表、ハイパーリンクなどのHTML部品を制御する方法など、自動操作に欠かせないノウハウを丁寧に解説。
Message#4 2015年2月5日(木)12時11分 From: micl | 返事 削除 変更 |
ちょっと変えたが前のと同じです。 Function cntcol(selrang As Range, testcol As Range) As Integer Dim cntcol As Integer cntcol = 0 For Each c In selrang If c.Interior.Color = testcol.Interior.Color Then cntcol = cntcol + 1 End If Next End Function 1. これを数を数えたいBOOKの標準モジュールに貼ります。 2. 数を数えたいシートの何も書いてない適当なセルを選択します。ここに数が表示されます。 3. メニュー「数式」―リボン「関数の挿入」―「関数の挿入」ダイアログの「関数の分類」で「ユーザー定義」選択―「関数名」で、「cntcol」選択―「OK」ー「関数の引数」ダイアログで「selrang」に数えたいセル範囲選択―「testcol」に数えたい色のセルを1つ選択ー「OK」 4. セルに数が表示されるはずです。 これでダメならあきらめましょう。 何色がいくつというような動作も簡単だから考えたらいいでしょう。 あなたの思うような動作にはならないでしょうが、質問が漠然としているので仕方がないでしょう。 |
Message#3 2015年2月5日(木)12時11分 From: rt45ytr | 返事 削除 変更 |
せっかく教えていただいて申し訳ありませんが、標準モジュールに張り付けても やはりセルの背景色をカウントできませんでした。 申し訳ありませんがあきらめる事ができないので、もう少しわかりやすく 教えていただけませんでしょうか。 |
Message#2 2015年2月5日(木)12時10分 From: maicl | 返事 削除 変更 |
色の指定の仕方もいろいろあって、1600万色もある色のうちから何色が何個あるなんて、一般的に数えるようなのは面倒。で、指定した色のインデックスを数えるようにした関数をつくったので、試してみる。 指定したセルの色のインデックスと同じ、選択範囲にある色インデックスのの数を返すようにした。インデックスだから、56色まで。 これを、標準モジュールに貼って、ユーザー関数として使えばいい。 Function cntcol(selrang As Range, testcol As Range) As Integer For Each c In selrang If c.Interior.colorindex = testcol.Interior.colorindex Then i = i + 1 End If Next cntcol = i End Function 「colorindex」を「color」に変えれば1600万色に対応するとおもう。 これを参考に、subを作ればいいでしょう。 「VBAについては無知」ということなので、これくらいのこと(ユーザー関数の使い方とか)でどうやっていいかわからないということなら、あきらめましょう。 |
Message#1 2015年2月5日(木)11時08分 From: rt45ytr | 返事 削除 変更 |
ウィンドウズ7でエクセル2012を使用しています。一定の範囲内の背景色(3色)使用しているセルの 数をカウントしたい。背景色の番号を求め、その背景色番号をVBA等でカウントする方法になるかとは思いますが、いろいろと調べて挑戦したのですがカウントできませんでした。VBAについては無知なので、申し訳ありませんがわかりやすくエクセル2012で作成するVBA等の方法を教えてください。 |
昨日以降 2日前以降 3日前以降 4日前以降 5日前以降