- ベストアンサー
指定するセルの背景色を点滅させたい
教えてください。 複数の指定したセルを同時に点滅させる方法です。 下記のQ&A(No.2の回答)で一つのセルに対して点滅させる方法が紹介してありましたが、いくつかのセルを同時に点滅させたいのです。 標準モジュールの記述を変えれば対応できるのでしょうか? VBAは全くの初心者です。よろしくおねがいします。 http://hiroba.chintai.net/qa2751574.html
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
各ブロック内のColorIdx1とColorIdx2をそれぞれ好きな数字にして下さい。 指定した色に変わります。
その他の回答 (3)
- Kame_LABO
- ベストアンサー率24% (30/122)
#1です > Const ColorIdx1 = 37 の37をかえれば可能だと思います。
お礼
ありがとうございます。 質問の記述が足りませんでした・・・すみません。 同じシート上で点滅するセルをそれぞれ違う色にしたかったんですが・・・
- imogasi
- ベストアンサー率27% (4737/17069)
WEBを当たって見ました。 http://www2.moug.net/bbs/exvba/20071001000030.htm のAPIを使っている方が動きました。 相当数記事はあるが、理解も不十分だったかもしれないが、他はうまくいかなかった。 ーー 3箇所なら(上記のコードの中で) '1個目 Call SB2_Iro(.Range("B1"), 3, 6) '2個目 Call SB2_Iro(.Range("C2"), 3, 6) '3個目 Call SB2_Iro(.Range("A2"), 8, 6) <=追加 のようにすればうまくいきます。だから増やせます。 色もばらばらにできます。 -- ただ実行中は、他の作業として、コピー貼り付けをやろうとすると、うまく行かなかった。 ーー こういうのはエクセル本体で、メニューなりの設定操作として、正式に取り上げてくれないと、ユーザーが独自にやるのは無理があるように思うがどうでしょうか。 エクセルはパワポなどと違って、そこまでと思ったのかも。
お礼
ありがとうございます。 VBAも解らないのにAPI?ほとんど呪文のようです。 確かに上記Webの記述をコピペしたら動きました、がその後全く加工と言うか手を加えることが出来ません。 これからもっと勉強したいと思います・・・
- Kame_LABO
- ベストアンサー率24% (30/122)
With Worksheets("Sheet1").Range("A1").Interior If .ColorIndex = ColorIdx1 Then .ColorIndex = ColorIdx2 Else .ColorIndex = ColorIdx1 End If End With のA1を変えて、 Application.OnTime Now + TimeValue("00:00:01"), "Blink" の前に記述すれば可能だと思います。
お礼
ありがとうございます。 ご指摘の通り記述したら見事複数セルが点滅しました。 これからもっと勉強します。 ちなみに点滅するセルの色を変えることは可能でしょうか?
お礼
ありがとうございます。 何日かPC開く時間が無くお礼が遅れてしまい済みませんでした。 Kame_LABOさんの仰る通りうまく動きました。簡単な事のように説明していただきましたが私にとっては目から鱗です。人に聞く事ばかりではなく自分でも勉強しなくては・・・ですね! これからも宜しくお願いいたします。