Note: The other languages of the website are Google-translated. Back to English

Excelで一定時間後にメッセージボックスを自動的に閉じるメッセージボックスタイマーを作成するにはどうすればよいですか?

Excelブックを使用する場合、問題を解決するためにVBAスクリプトを使用することがよくあります。 また、スクリプトの実行中にいくつかのメッセージボックスがポップアップ表示されます。 場合によっては、指定したメッセージボックスを手動で閉じるのではなく、一定時間後に自動的に閉じる必要があります。 この記事では、Excelで一定時間後にメッセージボックスを自動的に閉じるメッセージボックスタイマーを作成する方法を紹介します。

メッセージボックスタイマーを作成して、一定時間後にメッセージボックスを自動的に閉じる


メッセージボックスタイマーを作成して、一定時間後にメッセージボックスを自動的に閉じる

ここでは、メッセージボックスタイマーを作成するためのVBAスクリプトテンプレートを提供します。

セル値に基づいて行を移動するVBAスクリプトを実行しているとします。 移動が終了したら、操作が成功したことを通知するメッセージボックスがポップアップ表示され、このメッセージボックスは4秒後に自動的に閉じる必要があります(下のスクリーンショットを参照)。 以下の手順に従ってください。

1。 開く アプリケーション向け Microsoft Visual Basic ウィンドウ、クリック インセット > モジュール、次に、セル値に基づいて行を移動するために使用するVBAコードを挿入します。

2.次のVBAコード1をコピーして、操作するコードの前に配置します。 以下のスクリーンショットを参照してください。

VBAコード1:

Private Declare PtrSafe Function CustomTimeOffMsgBox Lib "user32" Alias "MessageBoxTimeoutA" ( _
            ByVal xHwnd As LongPtr, _
            ByVal xText As String, _
            ByVal xCaption As String, _
            ByVal xMsgBoxStyle As VbMsgBoxStyle, _
            ByVal xwlange As Long, _
            ByVal xTimeOut As Long) _
    As Long

3.以下のVBAコード2をコピーして、操作するコードの「EndSub」行の前に配置します。

VBAコード2:

 Call CustomTimeOffMsgBox(0, "Moved successfully. This message box will be closed after 4 seconds", "Kutools for Excel", vbInformation, 0, 4000)

注意:必要に応じて、メッセージボックスの内容やダイアログボックスの表示時間を変更できます。

4.コードを実行して操作を実行すると、メッセージボックスがポップアップ表示され、証明書の時間(この場合は4秒)後に自動的に閉じます。


関連記事:


最高のオフィス生産性ツール

Kutools for Excelはほとんどの問題を解決し、生産性を80%向上させます

  • 再利用: すばやく挿入 複雑な数式、チャート および以前に使用したものすべて。 セルを暗号化する パスワード付き。 メーリングリストを作成する そしてメールを送る...
  • スーパーフォーミュラバー (複数行のテキストと数式を簡単に編集できます); 読書レイアウト (多数のセルを簡単に読み取って編集する); フィルター範囲に貼り付け...
  • セル/行/列をマージする データを失うことなく; 分割セルコンテンツ; 重複する行/列を組み合わせる...重複セルを防止します。 範囲を比較する...
  • [複製]または[一意]を選択します 行; 空白行を選択 (すべてのセルは空です); スーパーファインドとファジーファインド 多くのワークブックで; ランダム選択...
  • 正確なコピー 数式参照を変更せずに複数のセル。 参照の自動作成 複数のシートに; 箇条書きを挿入、チェックボックスなど...
  • テキストを抽出、テキストの追加、位置による削除、 スペースを削除する; ページング小計の作成と印刷。 セルの内容とコメントを変換する...
  • スーパーフィルター (フィルタースキームを保存して他のシートに適用します); 高度な並べ替え 月/週/日、頻度など。 特殊フィルター 太字、斜体...
  • ワークブックとワークシートを組み合わせる; キー列に基づいてテーブルをマージします。 データを複数のシートに分割; xls、xlsx、PDFをバッチ変換...
  • 300以上の強力な機能。 Office / Excel2007-2019および365をサポートします。すべての言語をサポートします。 企業や組織に簡単に導入できます。 全機能30日間の無料トライアル。 60日間の返金保証。
kteタブ201905

Officeタブは、タブ付きのインターフェイスをOfficeにもたらし、作​​業をはるかに簡単にします

  • Word、Excel、PowerPointでタブ付きの編集と読み取りを有効にする、パブリッシャー、アクセス、Visioおよびプロジェクト。
  • 新しいウィンドウではなく、同じウィンドウの新しいタブで複数のドキュメントを開いて作成します。
  • 生産性が50%向上し、毎日何百ものマウスクリックが減ります。
officetab下部
コメントを並べ替える
コメント (6)
まだ評価はありません。 最初に評価してください!
このコメントは、サイトのモデレーターによって最小化されました
あなたは完璧です...:lol::lol::lol:8)8)8)
このコメントは、サイトのモデレーターによって最小化されました
それは本当に素晴らしいですが、私のコードでは、「GetAsyncKeyState」関数を使用してデータのエントリステータスを認識し(スキャンガンを使用)、「MsgBoxTimeout」関数が「GetAsyncKeyState」関数に影響を与えています。 「MsgBoxTimeOut」がないと、すべてが正常に機能します。これを含めると、「GetAsyncKeyState」関数を非アクティブ化するようなものですが、両方を一緒に機能させたくありません。 何か提案はありますか?
このコメントは、サイトのモデレーターによって最小化されました
やあ。 ボックスが表示されたときにExcel(VBA)のチャイムを停止する方法はありますか? これをコードの一部で繰り返しループするメッセージとして使用する必要がありますが、音量を下げる以外に、ボックスが表示されるたびに表示される警告音を停止する方法がわかりませんか? ありがとう。
このコメントは、サイトのモデレーターによって最小化されました
やあ。 これをありがとう-それは本当に便利です。 ボックスが表示されたときにExcel(VBA)のチャイムを停止する方法はありますか? これをコードの一部で繰り返しループするメッセージとして使用する必要がありますが、音量を下げる以外に、ボックスが表示されるたびに表示される警告音を停止する方法がわかりませんか? ありがとう。
このコメントは、サイトのモデレーターによって最小化されました
こんにちは銀行員、これはウィンドウズで鳴るデフォルトのアプリケーションシステムです。 下のスクリーンショットに示すように、オフにすることができます。
このコメントは、サイトのモデレーターによって最小化されました
クリスタルに感謝します。 とても有難い
ここにはまだコメントが投稿されていません
あなたのコメントを残す
ゲストとして投稿
×
この投稿を評価:
0   文字
推奨される場所