エクセルの関数や表作成、基本的な事は身につけることができ、次のステップに進もうと思い、マクロについて勉強したいと思い質問させていただきました。
今の目標としては、ある数値以下の時、またはそれ以上のときにセルを点滅、または文字を点滅させる方法などがありましたら教えて頂きたいです。条件付き書式でセル、またはフォント色を変えられても、点滅をさせる方法などは私には到底できる領域ではなく、マクロについても全く無知です。分かる方がいらしたらどうか教えてください。私のレベルはとりあえず基本的関数、マクロ以外の機能を理解できる程度です、尚プログラム言語については今から勉強という段階で全く分かりません。どうかこの程度のレベルの私ができる程度に説明して下さる方宜しくお願い致します。
No.4ベストアンサー
- 回答日時:
#1 #3 です。
>マクロについて勉強したい...
とのことでしたね。コメントを多く入れておきましたので、ご参考下さい。
また、さらに改造して、「A列にデータを入力すると」になっています。
【以下コード】
'API宣言---魔法の呪文みたいなもの
Private Declare Sub Sleep Lib "KERNEL32.dll" _
(ByVal dwMilliseconds As Long)
'EXCEL既定のイベント
Private Sub Worksheet_Change(ByVal Target As Range)
'セルが変化したら、以下のコードを実行
'変化のあったセルは Target であらわされる
'変数の宣言
Dim i As Integer
Dim ColorDat
'カラーインデックス定義
ColorDat = Array(15, 48, 16, 56, 16, 48, 15)
'エラートラップ
On Error Resume Next
'変化のあったセル=TargetがA列(列番号=1)であれば
'End If までの挟まれたコードを実行
If Target.Column = 1 Then
'そのセル背景色を
With Target.Interior
'配列ColorDatに書かれたデータ数だけ繰り返す
For i = 0 To UBound(ColorDat)
'ColorDatのi番目のカラー番号でセル背景色を塗る
.ColorIndex = ColorDat(i)
'API 30ミリ秒 Wait
Sleep 30
Next i
'最後にセルの背景色を解除
.ColorIndex = xlNone
End With
End If
End Sub
凄い分かり易く、教科書を見ているようです。
先程までは到底分かりませんでしたが、説明を見ながらならば理解できる領域にまで来る事ができているようです。色々いじくることも勉強の一環だと思いますので、色々自分でもいじくってみたいと思います。
ですが、皆様の知識には本当に頭が下がります。
少しでも近づけたら何よりだと感じます。
とりあえずこれを基に("A7")に1から1000の間、1501以上にtargetを絞りたいと思います。本当にありがとうございました。
No.3
- 回答日時:
>私がマクロやVBAに興味を持ったきっかけでしたものでその方法を初めに知りたくて皆様にお願い致しました。
>点滅を速くできるのであればまさに私の探し求めてた事が実現できます。
では。
色の書き換えにWAIT処理を入れる必要があるのですが、EXCELのWAITは1秒単位でしかかけられません。
この場合、VBA初心者には敷居が高いのですが API を使います。とは言え簡単な部類です。
#2 macchan1 さんのコードを改造し、セルがフラッシュするように見せるものです。
Sleepのあとの数字で、スピードを調整します。
同じく、セルに10以下の数字が入力されるとイベント発生です。
頑張って下さいね(^^)
'API宣言
Private Declare Sub Sleep Lib "KERNEL32.dll" _
(ByVal dwMilliseconds As Long)
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
Dim ColorDat
If Target.Value < 10 Then
'カラーインデックス定義
ColorDat = Array(15, 48, 16, 56, 16, 48, 15)
For i = 0 To UBound(ColorDat)
Target.Interior.ColorIndex = ColorDat(i)
Sleep 50 'API 50 msec Waitします
Next i
Target.Interior.ColorIndex = xlNone
End If
End Sub
何度もお手数かけて頂き本当にありがとうございます
。これが私のやりたいことでした!!先ほどから5時間くらいずっと実践して本当に僅かですができるようになりました。ですが皆様のレベルに到達するには
・・・と思うと高いハードルだ。と思いつつも
頑張ろうと思えます。これをもとにコードの詳細を調べさせて頂きたいと思います。完璧な回答の中で初心者の私が疑問に思うのは、関数のように特定のセル(D4,E4,F4に適用等)や条件付き書式のように
(1~1000の間、1501以上の時のみ点滅等)できないのかが疑問です。今日から寝る間を惜しんで本やPCで調べたいと思います。もし分かるのでしたら時間がある時でいいので教えていただければ幸いです。本当にアドバイスや回答ありがとうございました。
No.2
- 回答日時:
あまりお奨めできませんがマクロの勉強ということなので例を考えてみました。
例えばフォント色を変えるイベントマクロで入力した数字によって点滅のように見せることができます。
シート名を右クリックして「コードの表示」から以下のコードをコピーペーストしてみてください。
10未満の数を入力したときフォントが点滅しているように見えます。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim i As Integer
If Target.Value < 10 Then
For i = 1 To 5
Target.Font.ColorIndex = 2
Application.Wait Now() + TimeValue("00:00:01")
Target.Font.ColorIndex = 0
Application.Wait Now() + TimeValue("00:00:01")
Next
End If
End Sub
非常に勉強になります!!一つ一つの意味は理解できませんが、これを特定のセルに適用、背景色を点滅でき、点滅を速くできるのであればまさに私の探し求めてた事が実現できます。
もし、もしもう一度私の質問に貴重な時間を使って下さるのなら、コードの意味と上記に記載したようなことができるのか否かを教えていただければ光栄です。
No.1
- 回答日時:
EXCELにはセル背景や文字を点滅させる方法はありません。
VBAで擬似的にはできないこともありませんが。
1. フラッシュの原理として
A)セルの背景色書き換え
B)文字色の書き換え
のマクロを書く
2. Ontimeで数秒ごとにマクロ実行
と単純です。例えば、文字なら「黒」「白」を一定時間ごとに色を切り替えれば、点滅しているように見えます。
しかし、この場合常に数秒置きにマクロが実行されることになりますので、EXCELがまともに動作しなくなります。したがって、やめた方がよいでしょう。「目立たせたい」のであれば、「色使いやフォントの使い方によるデザイン」で勝負すべきです。
>マクロについて勉強したい...
とのことですが、セルや文字の点滅ではなく、別のテーマにした方が良いと正直思います。
アドバイスありがとうございます。私がマクロやVBAに興味を持ったきっかけでしたものでその方法を初めに知りたくて皆様にお願い致しました。
「デザインで勝負」とても参考になりました。
このアドバイスを機に向上していきたいと思います。
ありがとうございました。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- 高校受験 中3 高校受験 今日全県模試を受けて自己採点をしたのですが、めちゃくちゃ勉強した社会が38点でショッ 2 2022/12/04 17:51
- Visual Basic(VBA) 顧客ごとに違う点検案内を作成するマクロ 4 2022/09/16 05:34
- Visual Basic(VBA) エクセル VBA 条件によるセル点滅 お詳しい方 ご教授をお願いします。 Excelファイルにて 現 1 2022/11/03 15:53
- 高校 テスト勉強について 中間テストの結果がかえってきたのですがあまりよくありませんでした。 現代の国語と 2 2023/06/05 00:46
- 大学受験 国立受験 11月からの大逆転劇を起こすには 7 2022/11/14 19:24
- Excel(エクセル) 【Excel】指定した文字列に該当する行を重複しないようにリスト 3 2022/03/30 12:27
- Excel(エクセル) Excel 、この式はどのように解釈すればいいのでしょうか 4 2023/02/03 08:53
- その他(職業・資格) 弁理士試験の勉強方法について 1 2022/09/11 07:32
- 高校受験 高校受験まで2週間/未だに理社が平均点以下 理社の点数が未だに平均点以下から上がらず困っています… 1 2023/01/29 18:24
- 大学受験 大学受験英語長文の勉強法について 武田塾のYouTubeなどを参考にして、勉強法を考えました 自分は 2 2023/05/05 08:05
このQ&Aを見た人はこんなQ&Aも見ています
-
これまでで一番「情けなかったとき」はいつですか?
これまでの人生で一番「情けない」と感じていたときはいつですか? そこからどう変化していきましたか?
-
人生最悪の忘れ物
今までの人生での「最悪の忘れ物」を教えてください。 私の「最悪の忘れ物」は「財布」です。
-
2024年に成し遂げたこと
今年も残すところわずか。 皆さんが今年達成したことを教えていただきたいです。 どんな小さなものでも構いません。
-
自分の通っていた小学校のあるある
進学したり大人になってから、「あれって自分の小学校だけだったのかな」と思うことありますよね。 逆に「他の小学校ってそんなことするの!?」と思ったり。 そんな「自分の通っていた小学校」のあるあるを教えてください!
-
14歳の自分に衝撃の事実を告げてください
タイムマシンで14歳の自分のところに現れた未来のあなた。 衝撃的な事実を告げて自分に驚かせるとしたら何を告げますか?
-
エクセルのセルや文字を点滅表示できますか?
Excel(エクセル)
-
Excelで文字の点滅方法
Excel(エクセル)
-
エクセルで、セル内の文字を点滅させるには。
その他(Microsoft Office)
-
-
4
エクセルVBA 指定のセル背景色を点滅させたい
Excel(エクセル)
-
5
一定時間間隔でセルを点滅させたい
Visual Basic(VBA)
-
6
エクセル VBA 条件によるセル点滅 お詳しい方 ご教授をお願いします。 Excelファイルにて 現
Visual Basic(VBA)
-
7
セルをフリッカーされる方法
Excel(エクセル)
-
8
エクセル セルのデータが更新したら点滅させる
Excel(エクセル)
-
9
メッセージボックスに表示する文字を大きくしたい
Excel(エクセル)
-
10
セルのブリンクと停止
Excel(エクセル)
-
11
エクセルVBAでオートシェイプを点滅させたい。
Excel(エクセル)
-
12
フォントの大きさ
Visual Basic(VBA)
-
13
数式による空白を無視して最終行を取得するマクロ
Excel(エクセル)
-
14
Excelでマクロ実行中に画面を固定する方法
Visual Basic(VBA)
-
15
A1セルに入力したら、入力時間をA2セルに自動挿入
Excel(エクセル)
-
16
次の日の日付を自動的に点滅させたい。エクセル2007
Excel(エクセル)
-
17
エクセルで特定の列が0表示の場合、その行を非表示にしたい
Excel(エクセル)
-
18
エクセルファイルを開く時、常に同じシートから開くようにするには?
Windows Vista・XP
-
19
VBA(エクセル)で自動的にボタンをクリックさせるには
その他(プログラミング・Web制作)
-
20
vlookup にて、返す値が、空白の場合に、任意の文字列を表示するには?
Excel(エクセル)
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・「みんな教えて! 選手権!!」開催のお知らせ
- ・漫画をレンタルでお得に読める!
- ・「黒歴史」教えて下さい
- ・2024年においていきたいもの
- ・我が家のお雑煮スタイル、教えて下さい
- ・店員も客も斜め上を行くデパートの福袋
- ・食べられるかと思ったけど…ダメでした
- ・【大喜利】【投稿~12/28】こんなおせち料理は嫌だ
- ・前回の年越しの瞬間、何してた?
- ・【お題】マッチョ習字
- ・モテ期を経験した方いらっしゃいますか?
- ・一番最初にネットにつないだのはいつ?
- ・好きな人を振り向かせるためにしたこと
- ・【選手権お題その2】この漫画の2コマ目を考えてください
- ・2024年に成し遂げたこと
- ・3分あったら何をしますか?
- ・何歳が一番楽しかった?
- ・治せない「クセ」を教えてください
- ・【大喜利】【投稿~12/17】 ありそうだけど絶対に無いことわざ
- ・【選手権お題その1】これってもしかして自分だけかもしれないな…と思うあるあるを教えてください
- ・集合写真、どこに映る?
- ・自分の通っていた小学校のあるある
- ・フォントについて教えてください!
- ・これが怖いの自分だけ?というものありますか?
- ・スマホに会話を聞かれているな!?と思ったことありますか?
- ・それもChatGPT!?と驚いた使用方法を教えてください
- ・見学に行くとしたら【天国】と【地獄】どっち?
- ・これまでで一番「情けなかったとき」はいつですか?
- ・この人頭いいなと思ったエピソード
- ・あなたの「必」の書き順を教えてください
- ・10代と話して驚いたこと
- ・14歳の自分に衝撃の事実を告げてください
- ・人生最悪の忘れ物
- ・あなたの習慣について教えてください!!
- ・都道府県穴埋めゲーム
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel内での検索結果をシート...
-
クリックすると文章が表示され...
-
エクセル 数字をすべて○などの...
-
現在のセルの位置を返す関数は...
-
エクセルでPDFリンクを大量...
-
フォントの色を指定して削除出...
-
【EXCEL】先週の月曜日の日付を...
-
セルの内容をテキストボックス...
-
太字に設定されているセルの個...
-
エクセル 未入力セルがあると...
-
セルがクリックされた回数をカ...
-
Excel ハイパーリンクのURLを別...
-
Excelでセルをクリックす...
-
[エクセル VBA]テキストファ...
-
セル結合されていないのに結合...
-
エクセル 行列を入れ替えてオ...
-
マクロを実行すると画像がズレ...
-
Excel2003 チェックすると日付...
-
図のハイパーリンクを別のセル...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
EXCELで特定のセルに表示...
-
Excel内での検索結果をシート...
-
エクセル 数字をすべて○などの...
-
クリックすると文章が表示され...
-
Excelで、図形内の文字をセルに...
-
太字に設定されているセルの個...
-
Excel ハイパーリンクのURLを別...
-
Excelでセルをクリックす...
-
マクロを実行すると画像がズレ...
-
【EXCEL】先週の月曜日の日付を...
-
現在のセルの位置を返す関数は...
-
フォントの色を指定して削除出...
-
セルがクリックされた回数をカ...
-
エクセル 未入力セルがあると...
-
セルの内容をテキストボックス...
-
エクセルでPDFリンクを大量...
-
エクセルでページ数をあるセル...
-
アポストロフィーの一括挿入 ...
-
Excel2007 色のカウント (VBA)
-
エクセルでセルをダブルクリッ...
おすすめ情報