No.1ベストアンサー
- 回答日時:
こんにちは
回答がないようなので・・・
画像はパターンしかわかりませんし、コードはまったく読み取れませんね。
ご質問文のほうもよくわからないところがあるので、回答が付きにくいのではないかと推測します。
わたしも具体的な内容はさっぱりなので、想像による方法のみの回答しかできませんが、何かのヒントにでもなれば。
>条件付き書式について質問させていただきます
>条件付き書式をVBA でつけたのですが~
通常のエクセルの「条件付き書式」の設定の話であれば、VBAでも手作業でも1回だけ設定してしまえばよいので、わざわざVBAで行う意図がよくわかりません。
とりあえず、以下は「条件付き書式」の話してとして記述しています。
>色をつけたものが連続してしまったときに別の色で~
データのセットが行単位なのか列単位なのか不明ですが、行単位のことが多いと思いますので、「連続している」とは「連続した行に条件付き書式で塗色が設定された時」と解釈しました。(列単位の場合も要領はおなじです)
想像するところ、現状は『その行が条件に合えば、塗色(色A)を設定』という設定になっていると思いますが、条件付き書式は複数の条件を設定することができますので、連続を判断するには『その行が条件に合致し、かつ、前の行が条件に合致する場合は、異なる塗色(色B)を設定』という条件を追加すればよいです。
仮に、直接セルの塗色を指定したとしても条件付き書式の方が優先されますので、上記のように条件付き書式で処理をしきるか、あるいは条件付き書式をはずして塗色を直接指定するかのどちらかの方法になると思います。
ただし、上記は「連続していたら色Bにする」という指定になりますので、複数行で連続するブロックがあった場合、その先頭行は色A、次行以降は色Bになります。
(ご質問文からはこのあたりが読み取れませんでしたので)
そうではなくて、3行目も連続していたら色C(または色A)にしたいという意味でしたら、さらに前の行の条件合致状態も付け加えて・・・・
としていけば不可能ではありませんが、何行連続するのかわからない場合は、煩雑すぎますし、実用的とは言えません。
連続する行を複数の色(例えば2色とか3色)で順に繰り返したいというご質問であるのなら、上記の方法ではうまくいきませんので、簡単な方法として、作業列(または行)を用いるのが良さそうです。(直接設定できる方法もあるかもしれませんが、式が相当に面倒そうなので)
空いている列を作業列にします。(ビジュアル上見えたくなければ、設定後に列を非表示にすればよいでしょう)
作業列のセルに「その行が条件に合致しなければ0、合致した場合は(前の行+1)」となるように式を設定します。
これをオートフィルすると、合致が連続する行のブロックがあれば先頭行から順に1、2、3…と表示されるはずです。(合致しない行は0表示)
条件付き書式の設定では、
作業列の値が0ではなく除余が1なら色A
〃 2なら色B
・・・・・・
という設定にしておくことで可能になります。
ご質問文の「条件付き書式」というのはミスディレクションで、ご質問の内容がVBAで直接塗色を設定している場合という意味でしたら、上記の作業列に該当することをプログラムで行えばよいでしょう。
VBAの処理の場合は、想像するところ、各行を順にループで処理しているものと思いますので、
例えば、合致の連続を数えるカウンタ(=変数)を用意しておいて、
条件に合致しなければカウンタをクリア
条件に合致しているときはカウンタをインクリメント
するようにしておきます。
塗色を決める際に、カウンタの数値に対する(色数の)徐余を求め、その値で色を決めるようすることで、連続する行の塗色が順に変わることになります。
※ 現状が実際にどうなっているのかわからないので、とりあえず、思いつくままにいろいろ書いてしまいました。
可能性がいろいろ考えられるので、長文になってしまい、失礼いたしました。
この回答へのお礼
お礼日時:2017/02/22 18:40
色々と分かりにくい質問で申し訳ありません。わざわざVBAにしたのは他の作業も一気に行いたかったのとブックが毎月違うものになるためです。
今は条件付き書式で色をつけているのですが、他の方法でもできるのではと思いましたので調べて試してみようと思います。
回答いただきありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:00
- Visual Basic(VBA) VBA初心者です。 VBAで行単位で条件付き書式の色をカウントしたいです。 大量のデータがあるExc 3 2022/06/08 10:02
- その他(Microsoft Office) エクセル 表の移動 2 2023/04/05 20:29
- Visual Basic(VBA) Excel(VBA) 特定の条件に該当する行の値、書式を同じセルにコピ&ペーストしたいです 1 2022/05/21 18:18
- Visual Basic(VBA) 昨日、質問した件『VBA にて、条件付き書式で背景色を設定しているセルの範囲で、背景色付きのセルをカ 4 2022/04/07 14:39
- Visual Basic(VBA) エクセル VBA 条件によるセル点滅 お詳しい方 ご教授をお願いします。 Excelファイルにて 現 1 2022/11/03 15:53
- Excel(エクセル) エクセルで教えて下さい。 2 2022/05/18 13:00
- Excel(エクセル) 半角ハイフンを除いた重複に色を付ける数式について 5 2022/09/08 20:43
- その他(Microsoft Office) マクロについて教えて下さい 3 2022/05/28 15:36
- Excel(エクセル) Excel アクティブセルのみ条件付き書式の色を他の色にしたい。 4 2022/06/11 22:19
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【VBA】計算結果に小数点第2位...
-
MsgBoxの中にある数字や日付の...
-
チェックボックスのある行を非...
-
VBAの繰り返し処理について教え...
-
AccessのVBAで、パラメータを使...
-
MSAccessでODBCを介してDB接続...
-
マイナス記号を▲で表す方法
-
16進数の文字列を普通の文字列...
-
クリスタルレポートの改ページ...
-
スリープ状態とロック状態の違...
-
Apache起動エラー
-
CISCO carrier transition増加
-
AirStationツールなどのインス...
-
不明配線の捜索ツール
-
blackjumbodogでメールサーバー...
-
VineLinux2.6が正常に起動しない
-
fedora linux 34 MATE における...
-
VectorWorksの安い入手方法を教...
-
リピータハブのループ構成
-
クロスケーブルを使って二台のP...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【VBA】計算結果に小数点第2位...
-
MsgBoxの中にある数字や日付の...
-
チェックボックスのある行を非...
-
VBA 条件付き書式で空欄は適用...
-
クリスタルレポートの改ページ...
-
POIを使った書式設定
-
時間表示で0:48:17と入力すると...
-
spread6.0(セル連結)
-
マイナス記号を▲で表す方法
-
FORMAT関数で値が変わる
-
MSAccessでODBCを介してDB接続...
-
VBA コンボボックスの表示(日...
-
EXCEL2010でRGB指定できない
-
grep で複数条件を指定
-
C#にて、他言語にローカライズ...
-
エクセルのメモについて教えて...
-
エクセル元データの#N/Aを非表...
-
VBでエクセル出力の文字を太字...
-
$_SERVER["PHP_SELF"]などでURL...
-
syntax error, unexpected $end...
おすすめ情報
事情があって画像は撮影したものですので見えにくかったら申し訳ありません。