人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エクセルのmsgbox は、マクロの実行を中断してしまいます。同じようなポップアップで、単なる状態を教えてくれるのがあったら教えてください。(これに、進行状況がでているようなのだとなおよしです。)

●質問者: kaiketsu
●カテゴリ:コンピュータ 科学・統計資料
✍キーワード:エクセル ポップアップ マクロ
○ 状態 :終了
└ 回答数 : 3/3件

▽最新の回答へ

1 ● juner
●27ポイント

msgboxで出力するものを、一定のセルに出力してはどうでしょう?

勿論、msgboxの様に一時停止はしませんから、早い処理の場合、最後のメッセージしか見れないでしょうけれど。

もしくはメッセージを出力する行か列を作って出力していくか…。

http://msft.ems.okayama-u.ac.jp/ems2/sum.html

URLはセルの値を読み書きする方法の一例です…。

◎質問者からの返答

ポップアップしてくれるのがあるといいのですが、


2 ● garyo
●27ポイント

http://www.asahi-net.or.jp/~ef2o-inue/vba_k/sub04_080.html

ユーザーフォームを作成してそこに何分の何と進行を表示してはどうでしょうか。

http://www.officepro.jp/excelvbaform/form_form/index1.html

モードレスで表示すれば、処理しながら表示できると思います。


3 ● ふるるP
●26ポイント

自作のユーザーフォームで、vbModelessでオープンすれば、フォームが表示しても処理が継続します。

UserForm1, UserForm2を用意し、UserForm1のShowModalをFalseにして、コマンドボタンをひとつおきます。UserForm2にはラベルをおきます。UserForm1のコマンドボタンでUserForm2を表示し、進捗具合を表示するサンプルです。

Private Sub CommandButton1_Click()

Dim i As Long

UserForm2.Show vbModeless

UserForm2.Label1.Caption = ""

For i = 1 To 100000

DoEvents

If i Mod 10000 = 0 Then

UserForm2.Label1.Caption = String(i \ 10000, "□")

Else

End If

Next

End Sub

http://q.hatena.ne.jp/1246168336

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ