エクセル2000です。
ワークシートに配置したオートシェープ(「矢印」と名前を付けてあります。)をチカチカさせたいのです。
Sub マーク点滅()
Dim i As Integer
i = 0
Do
i = i + 1
Loop Until i = 3
Sheets("AAAA").Shapes("矢印").Visible = True
Sheets("AAAA").Shapes("矢印").Visible = False
End Sub
とやってみましたがぜんぜんだめでした。
いい方法はないでしょうか?
No.2ベストアンサー
- 回答日時:
> Declare Sub Sleep Lib "kernel32" _
> (ByVal dwMilliseconds As Long)
> って何でしょうか?
これはkernel32ダイナミックリンクライブラリにある"SLEEP" WindowsAPI関数を使うための記述です。VBAだけでは1秒以下の処理停止ができないのでAPI関数を呼び出しています。以外と高度なテクですが、便利です。ちなみに、1000が1秒に相当しますが、微小時間はあまり正確ではありません。
> DoEventsを入れないと点滅しませんでしたがなぜでしょ> うか?
DoEvents は、OS に一時的に制御を渡すコマンドです。ここではループ中にオブジェクトを再描画させるために使っていますが、他のコードに強制的に処理を移すときに使います。
No.1
- 回答日時:
動作を繰り返す場合、そのコードをループ内に書かなければいけません。
また、処理後にオブジェクトを表示をさせるためにDoEvents
を入れてやるといいでしょう。
以下に例を示します。必ず標準モジュールに記述してください。
Declare Sub Sleep Lib "kernel32" _
(ByVal dwMilliseconds As Long)
Sub マーク点滅()
Dim i As Integer
Dim x As Integer '点滅回数
Dim slp As Integer '点滅速さ
x = 10
slp = 200
For i = 1 To x
Sleep slp
Sheets("AAAA").Shapes("矢印").Visible = False
DoEvents
Sleep slp
Sheets("AAAA").Shapes("矢印").Visible = True
DoEvents
Next i
End Sub
ありがとうございました!
ところで
Declare Sub Sleep Lib "kernel32" _
(ByVal dwMilliseconds As Long)
って何でしょうか?
DoEventsを入れないと点滅しませんでしたがなぜでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/06/01 14:45
- Visual Basic(VBA) Excelのマクロコードについて教えてください。 1 2022/06/19 10:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/08 09:08
- Visual Basic(VBA) エクセルのマクロについて教えてください。 4 2023/03/02 08:40
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2023/03/07 14:05
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/11 12:55
- Visual Basic(VBA) エクセルのマクロについて教えてください。 1 2022/10/13 08:41
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/06/04 09:39
- Visual Basic(VBA) エクセルのマクロについて教えてください。 2 2023/03/12 10:10
- Excel(エクセル) 2つのVBAを一緒にしたら機能しなくなりました(エクセル) 7 2022/06/02 12:41
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
エクセルのセルや文字を点滅表示できますか?
Excel(エクセル)
-
セル背景や文字を点滅させる方法
Word(ワード)
-
Excelで文字の点滅方法
Excel(エクセル)
-
-
4
一定時間間隔でセルを点滅させたい
Visual Basic(VBA)
-
5
エクセルVBA 指定のセル背景色を点滅させたい
Excel(エクセル)
-
6
ユーザーフォームを表示中にシートの操作をさせるには
Excel(エクセル)
-
7
Excelのシート上のShapeにイベントは設定できる?
Excel(エクセル)
-
8
指定したシート名以外を非表示にするには?VBA
Excel(エクセル)
-
9
Excel VBA あるセルでENTERを押すと特定のセルへ移動したい
Excel(エクセル)
-
10
VBAのコマンドボタンの文字列の改行方法は?
Visual Basic(VBA)
-
11
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
12
VBAでの一時停止と再開の方法
その他(プログラミング・Web制作)
-
13
マクロを実行すると画像がズレてしまいます
その他(Microsoft Office)
-
14
ExcelVBA 図形をクリックした際のイベントを拾うには
Visual Basic(VBA)
-
15
ユーザーフォームのテキストボックスに前回入力した値を表示する Excel
Visual Basic(VBA)
-
16
【ExcelVBA】マクロの入ったシートをコピーしても新しいシート内でマクロを動作させるには?
Excel(エクセル)
-
17
VBAで保存しないで閉じると空のBookが残る
Excel(エクセル)
-
18
エクセルのVBA 特定のセルでエンターキーでマクロ実行
Excel(エクセル)
関連するカテゴリからQ&Aを探す
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Excelで文字の点滅方法
-
黄色の点滅信号と赤の点滅信号...
-
ダイアグとは・・・?
-
エクセルVBA 指定のセル背...
-
エクセルVBAでオートシェイ...
-
F3のセルフタイマー
-
オーディオインターフェースのU...
-
最近スマホを使っていて熱を持...
-
LED点滅速度について
-
Audi TTの時計の合わせ方。
-
PS3コントローラーが充電できな...
-
社外HIDの不具合?
-
CBR954の時計
-
一定時間間隔でセルを点滅させたい
-
CPUクーラーが赤く点滅している...
-
FlexGridの選択されたセル内の...
-
TEPRA Lite LR30 が壊れた?
-
PCの電源は切ってるのに、通信...
-
真三国無双猛将伝のアイテム
-
F1で走る車の後ろにある赤く点...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Excelで文字の点滅方法
-
スマートキーの赤い点滅ランプ...
-
ダイアグとは・・・?
-
超高速点滅するホタル?
-
黄色の点滅信号と赤の点滅信号...
-
オーディオインターフェースのU...
-
Audi TTの時計の合わせ方。
-
エクセルで、セル内の文字を点...
-
EAのゲームで画面が点滅する
-
時計 アルミフレーム インテリ...
-
PS3コントローラーが充電できな...
-
TEPRA Lite LR30 が壊れた?
-
エクセルVBA 指定のセル背...
-
ガラホの青い点滅は何が来てい...
-
CPUクーラーが赤く点滅している...
-
エクセルVBAでオートシェイ...
-
UR22mk2がある日突然、白ランプ...
-
180SXの自己診断
-
一定時間間隔でセルを点滅させたい
-
左ウィンカー点滅が早い。
おすすめ情報