• ベストアンサー

Vbaで設定時間経過後に動作させたい

コマンドボタンが1と2があります。 1をクリックした10秒後に2を赤色にしたいのです クリックで赤色にするのはif文でbackcolor=RGBでしていましたが タイマーで動作させたいのです。 ネットで調べるとsleepを用いる、とか書かれて色々 試しましたが出来ませんでした。 さらに出来ればシート上にカウントダウンも表示できれば 嬉しいです。 お助けください、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.2

Sheet1にCommandButton1,CommandButton2を張り付け。 --- sheet1のCommandButton1のCommandButton1_Clickイベントで、 Private Sub CommandButton1_Click() MsgBox Now Application.OnTime Now + TimeValue("00:00:03"), "test02" End Sub ーーー Sub test02() MsgBox Now Worksheets("Sheet1").CommandButton2.BackColor = vbBlue 'vbYellow End Sub === >コマンドボタンが1と2があります。 張り付ける場所に、2通りある。 ・UserForm1に設ける ・Sheet1などシートに設ける これを質問に、はっきり書くこと。 本件はシートに設ける例。 ーー なぜ時間を、づらすのか? そんなん例は、質問やWEBの例では、今まで見たことない。 質問の回答に影響するかもしれないので、説明しておくべきだと思う。

Teilz11088
質問者

お礼

この回答は本に載っている回答と同じでダメでした

Teilz11088
質問者

補足

ご意見ありがとうございます。 全てシート内に貼り付けているコマンドボタンで変化をさせたいのです。 機械がが1つが動き出せばタイマーによって時間がずれて動き出すというのを実物でするのが一番なのですが実物ですると深刻な影響が出るために視覚的に捉えられないかと思いました。 なぜコマンドボタンを使っているかというと説明時に単独で機械の発停ということがあるのでそれはクリックで色を変える(緑→赤)(赤→緑)というのが必要だからです。機械を表現しているコマンドボタンはおよそ70ぐらいありその中でタイマーが絡むのがおよそ20ぐらいあります。なのでカウントダウン表示もあれば視覚的にわかりやすいと思った次第です。 教えていただいたコードですが動きませんでした。「マクロが実行出来ない、セキュリティ云々」とのコメントが出てきます。他のマクロは実行できるのでセキュリティでは無いとは思うのですが

その他の回答 (1)

  • t_hirai
  • ベストアンサー率28% (222/788)
回答No.1

書いたコードを載せてもらえますか? そうすればどこが間違っているか分かるかもしれません。

関連するQ&A