No.1
- 回答日時:
回答がつきませんね。
WordVBAとうたって驚かせるせいもあろうが、非才の私には内容が理解できない。Waitを入れるのは、マシンの処理が、人間の動作に比べ早すぎて、待ちを入れるケースを想像しますが、本件ではコンピュター処理に時間がかかるから人間が待つという逆のケースらしいが、ウエイトは遅れるコンピュターに待ちを入れてどうするのと思ったのですが、大いなる勘違いでしょうか??何分待ってくださいというメッセージを画面に出したいということですか。その時間の幅の算出はどうするのですか。そのことそのものが質問ですか。
時間がかかる処理は具体的に何ですか。普通は全レコード数がわかっている場合で、今何レコード目を処理しているかで、プログレスバーなど表示してますね。プログラムを実行する前に、そのプログラムの処理時間などわからないと思いますが。データ数にも関係しますから。
回答ありがとうございました。
でも、わかりにくい説明だったようで、申し訳ありません。
もう少しちゃんと説明すると、
(1)文書の読み込み
(2)書式変更
(3)文字の置換
(4)文書の保存
という一連の流れがあって、それぞれを一括で処理するためのマクロをつくりたいのです。
ちなみに(1)~(4)の処理はVBA化しています。
あとはつなぎ合わせるだけなのですが、(1)~(4)の各マクロの間に、"2秒の待ち時間"を指定して、次の処理にうつるようにさせたいのです。
希望する形、
Sub 全体処理()
文書読み込みVBA 部分
”ここに2秒待ちを設定”←この部分はどうやって記述するのでしょうか。
Call 書式変更
”ここに2秒待ちを設定”←〃 。
Call 文字の置換
”ここに2秒待ちを設定”←〃 。
Call 文書の保存
No.2
- 回答日時:
こんにちは。
以下の方法はどうでしょうか?
>”ここに2秒待ちを設定”←この部分はどうやって記述するのでしょうか。
Application.OnTime Now + TimeValue("00:00:2"), "書式変更"
2秒後に"書式変更"というマクロを実行します。
Callで呼び出す必要はないので1行で済みます。
試してみてください。
回答ありがとうございました。
まず、お礼が遅れたことを謝ります。
済みませんでした。
Application.OnTime Now + TimeValue("00:00:2"), "マクロ"
の形を早速試してみたところ、無事動きました。
ただ、
Application.OnTime Now + TimeValue("00:00:2"), "マクロ(1)"
Application.OnTime Now + TimeValue("00:00:2"), "マクロ(2)"
の形では、反応してくれません。基準になる時間の問題かと思って時間の間隔をズラしてみたりしたのですが、どうもうまくいきません。
ただし、
Application.OnTime Now + TimeValue("00:00:2"), "マクロ"
で記述した各マクロを、Call文で呼び出せば目的は達せられるのではないかと思います(未確認)ので、とりあえずは大丈夫かなと…。
No.3
- 回答日時:
こんにちは。
>"処理待ち"、もしくは"指定時間待ち"のWaitを指定したいのですが
そうです。解決策のひとつは、そのWaitメソッドです。(^^;
で、マクロを2秒間停止するには
Application.Wait Now + TimeValue("00:00:02")
としてもできますね。
詳しくは、Waitメソッドのヘルプをご覧あれ。
以上です。
No.4
- 回答日時:
再びこんにちは。
ポカしました。(^^;Wordですね。
WordVBAには、waitメソッドはありませんので、回答したコードはそのままは使えません。
使う前にexcelのobject libraryへの参照設定が必要になり、かつコードも数ステップ増えます。
初心者ということですので面倒なことはパスするということでNO.3の回答はスルーしてください。
エスセルで似たようなことをしたい時はOKです。
以上です。
回答ありがとうございました。
まず、お礼が遅れたことを謝ります。
済みませんでした。
インターネットを使って調べる場合、エクセルだと割と探しやすいのですが、ワードだとなかなか難しいので、こちらでお聞きしました。
できれば、Word2003でExcelのobject libraryへの参照設定の方法を詳しく教えていただけないでしょうか。
実はよくわかっていません。
Microsoft Excel 11.0 Object Library と Microsoft Office 11.0 Object Libraryは既に参照設定しているのですが、Waitを実行すると"メソッドまたはデータメンバが見つかりません"とコンバイルエラーが出ます。
オブジェクトプラウザで検索すると、出てくるのはExcelとOfficeなので、その辺だとは思っているのですが、何を参照設定すればWaitメソッドが使用できるようになるのでしょうか。
No.5ベストアンサー
- 回答日時:
こんばんは。
>(1)文書の読み込み
>(2)書式変更
>(3)文字の置換
>(4)文書の保存
これ自体に、Waiting は必要ないような気がしますね。なぜ必要なのか分りません。どこかに、バッファがあふれそうなんていうことがあるのでしょうか?単に、DoEventsでも入れておけばよいような気がしますし、記録マクロで、ループを使わないので、メモリを押し上げてしまっているのでしょうか?
API関数で負担を軽くするには、こんな方法がありますね。
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sub WaitingTestMethod()
Beep '実行
DoEvents
Sleep 2000
Beep '実行
End Sub
回答ありがとうございました。
まず、お礼が遅れたことを謝ります。
済みませんでした。
教えていただいたSleepを使った方法ですが、確認できました。
どうもありがとうございました。
使わせていただきます。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) 複数指定セルの可視セルのみを別シートに転記するVBAについて 2 2022/05/27 21:19
- Excel(エクセル) Excel VBAどこが間違ってますか? 4 2023/07/17 10:04
- Visual Basic(VBA) tatsumaru77様 昨日回答して頂いたものです。 すみませんが、昨日の質問で1つ補足があります 1 2022/05/15 15:06
- Visual Basic(VBA) エクセル 2つの列にある値の完全一致を抜き出すVBA 15 2022/12/15 03:22
- Visual Basic(VBA) エクセルVBA 4 2022/05/14 00:51
- Excel(エクセル) Excel VBAについてです。 少しだけ知識はあるのですが、 うまくいかなかったので 質問させてい 3 2022/09/13 18:40
- Visual Basic(VBA) 複数ブックの統合について Excel VBA 1 2022/05/13 09:48
- Visual Basic(VBA) 指定列最終行までのスペースを改行するVBAについて 2 2022/06/01 19:50
- Excel(エクセル) エクセルでcsvファイルを開いてVBAを使いたい 7 2022/04/28 11:12
- Excel(エクセル) 【VBA】ファイルパスに半角スペースが入ると、VBAが動かない 5 2022/08/04 20:52
このQ&Aを見た人はこんなQ&Aも見ています
-
プロが教えるわが家の防犯対策術!
ホームセキュリティのプロが、家庭の防犯対策を真剣に考える 2組のご夫婦へ実際の防犯対策術をご紹介!どうすれば家と家族を守れるのかを教えます!
-
Wordマクロでスリープ関数(API)を宣言する方法
その他(Microsoft Office)
-
Application.Wait の参照設定
Visual Basic(VBA)
-
ワードのマクロで段落番号(文字も含む)取得ってできますか
Word(ワード)
-
-
4
ワードからエクセルへ貼り付けるマクロ
Excel(エクセル)
-
5
Vba アプリケーションが立ち上がるまで待つ
Excel(エクセル)
-
6
【ワード】マクロで画像を選択する
Word(ワード)
-
7
ワードの図形をコピー&ペイストのマクロ
Word(ワード)
-
8
メッセージボックスのOKボタンをVBAでクリックさせたい
Visual Basic(VBA)
-
9
アクセスVBA 時間を止める
Access(アクセス)
-
10
EXCELのVBAでWORDが開いてあるかチェック
Excel(エクセル)
-
11
Wordのマクロでクリップボードの内容を取得する方法
Visual Basic(VBA)
-
12
Word VBA 表中の空白行を削除する方法
Word(ワード)
-
13
WORDのVBAで印刷プレビューの制御方法
Word(ワード)
-
14
現在のセルの位置を返す関数はありますか
Excel(エクセル)
-
15
Wordのマクロを有効にする方法
Word(ワード)
-
16
バッチファイルでキー操作を行う。
その他(プログラミング・Web制作)
-
17
【VBAユーザーフォームで閉じるボタンを表示したくない】
Visual Basic(VBA)
-
18
Excelファイルを開くとき、読み取り専用にするかどうかのダイアログを出ないようにしたい
Visual Basic(VBA)
-
19
EXCEL VBAで全選択範囲の解除
Excel(エクセル)
-
20
エクセルからワードのマクロを実行したい
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
どうやってもFor文を抜けてしま...
-
IF文に時間(何時から何時ま...
-
【C#/Java?】try-catchでcatch...
-
iPhoneのニューラルエンジンっ...
-
特定の名前のオートシェイプの...
-
Excel VBA セルの名前があるか...
-
VB6にてネットワーク上にある共...
-
StatusStripの表示が更新されな...
-
エクセルVBAでロックをかけたい
-
ListViewから選択中の文字列を取得
-
特定のファイルを他のプロセス...
-
vbaのエラー対応(実行時エラー...
-
UWSCのTHREADについて
-
決まった時刻に処理を行いたい
-
Functionで戻り値を複数返す方法
-
C++ Builder6.0 TNMFTPコンポー...
-
C# 指定時間(秒間)の間処理を...
-
VBAの進捗状況をリアルタイ...
-
検索サイトで、検索結果に広告...
-
Windows APIのメソッドをPInvok...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
private subモジュールを他のモ...
-
IF文に時間(何時から何時ま...
-
マクロで、次のコードへ行く前...
-
特定の名前のオートシェイプの...
-
シグナル 6(SIGABRT)とは?
-
特定のファイルを他のプロセス...
-
ExcelのVBAで、選択したファイ...
-
Excel VBA セルの名前があるか...
-
どう増強すべきか
-
Word VBA。各マクロの間に待ち...
-
【VBA】エラー処理で別プロシー...
-
UWSCのTHREADについて
-
シェルスクリプトでファイル内...
-
ドリブン??
-
Functionで戻り値を複数返す方法
-
iPhoneのニューラルエンジンっ...
-
エクセル VBAで複数セル選択時...
-
COBOL OCCURSで指定したデータ...
-
どうやってもFor文を抜けてしま...
おすすめ情報