
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を使った方法ですが、確認できました。
どうもありがとうございました。
使わせていただきます。
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.3
- 回答日時:
こんにちは。
>"処理待ち"、もしくは"指定時間待ち"のWaitを指定したいのですが
そうです。解決策のひとつは、そのWaitメソッドです。(^^;
で、マクロを2秒間停止するには
Application.Wait Now + TimeValue("00:00:02")
としてもできますね。
詳しくは、Waitメソッドのヘルプをご覧あれ。
以上です。
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.1
- 回答日時:
回答がつきませんね。
WordVBAとうたって驚かせるせいもあろうが、非才の私には内容が理解できない。Waitを入れるのは、マシンの処理が、人間の動作に比べ早すぎて、待ちを入れるケースを想像しますが、本件ではコンピュター処理に時間がかかるから人間が待つという逆のケースらしいが、ウエイトは遅れるコンピュターに待ちを入れてどうするのと思ったのですが、大いなる勘違いでしょうか??何分待ってくださいというメッセージを画面に出したいということですか。その時間の幅の算出はどうするのですか。そのことそのものが質問ですか。
時間がかかる処理は具体的に何ですか。普通は全レコード数がわかっている場合で、今何レコード目を処理しているかで、プログレスバーなど表示してますね。プログラムを実行する前に、そのプログラムの処理時間などわからないと思いますが。データ数にも関係しますから。
回答ありがとうございました。
でも、わかりにくい説明だったようで、申し訳ありません。
もう少しちゃんと説明すると、
(1)文書の読み込み
(2)書式変更
(3)文字の置換
(4)文書の保存
という一連の流れがあって、それぞれを一括で処理するためのマクロをつくりたいのです。
ちなみに(1)~(4)の処理はVBA化しています。
あとはつなぎ合わせるだけなのですが、(1)~(4)の各マクロの間に、"2秒の待ち時間"を指定して、次の処理にうつるようにさせたいのです。
希望する形、
Sub 全体処理()
文書読み込みVBA 部分
”ここに2秒待ちを設定”←この部分はどうやって記述するのでしょうか。
Call 書式変更
”ここに2秒待ちを設定”←〃 。
Call 文字の置換
”ここに2秒待ちを設定”←〃 。
Call 文書の保存
お探しの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も見ています
-
Wordマクロでスリープ関数(API)を宣言する方法
その他(Microsoft Office)
-
Application.Wait の参照設定
Visual Basic(VBA)
-
ワードのマクロで段落番号(文字も含む)取得ってできますか
Word(ワード)
-
-
4
Word VBA 表中の空白行を削除する方法
Word(ワード)
-
5
Wordのマクロで選択中の行番号を取得したい
Word(ワード)
-
6
ExcelVBAで既に開いてるwordを閉じる
Excel(エクセル)
-
7
Wordマクロ、選択した複数行を1行ずつ読み込みたい
Word(ワード)
-
8
Wordのマクロでクリップボードの内容を取得する方法
Visual Basic(VBA)
-
9
エクセルVBAで、条件に一致するセルへ移動
Excel(エクセル)
-
10
ワードマクロで画像を選択する方法
Word(ワード)
-
11
アクセスVBA 時間を止める
Access(アクセス)
-
12
英文の抽出マクロについて(ワード)
その他(Microsoft Office)
-
13
Word のVBAについて初心者なのですが、質問があります。
Word(ワード)
-
14
ワードを立ち上げると画面が小さいので、そのつど最大化ボタンを押して大き
その他(Microsoft Office)
-
15
Word VBA 表中の空白行を削除する方法
Word(ワード)
-
16
WORDマクロで特定文字から別文字までを範囲選択したい
Word(ワード)
-
17
VBAでブックを非表示で開いて処理して閉じる方法
Excel(エクセル)
-
18
wordのマクロで縮小して貼り付ける方法を教えてください。
Visual Basic(VBA)
-
19
Wordマクロで指定したフォルダ名に保存する方法について
Visual Basic(VBA)
-
20
vba クリップボードクリアについて教えてください
その他(プログラミング・Web制作)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
private subモジュールを他のモ...
-
どうやってもFor文を抜けてしま...
-
シグナル 6(SIGABRT)とは?
-
マクロで、次のコードへ行く前...
-
Word VBA。各マクロの間に待ち...
-
特定の名前のオートシェイプの...
-
IF文に時間(何時から何時ま...
-
C言語のGOTO文(組み込み系)
-
Excel VBA セルの名前があるか...
-
UWSCのTHREADについて
-
VB6.0で、ランタイムエラーを全...
-
エクセルVBAでロックをかけたい
-
¥マークを含むパスの処理につ...
-
フォルダのアクセス権確認について
-
Access プログレスバー 画面...
-
VBA For Each 〜 複数条件について
-
Functionで戻り値を複数返す方法
-
ドリブン??
-
VBA 複数の行を高速で削除する...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
【C#/Java?】try-catchでcatch...
-
vbaのエラー対応(実行時エラー...
-
シグナル 6(SIGABRT)とは?
-
どう増強すべきか
-
private subモジュールを他のモ...
-
IF文に時間(何時から何時ま...
-
特定の名前のオートシェイプの...
-
Excel VBA セルの名前があるか...
-
マクロで、次のコードへ行く前...
-
ExcelのVBAで、選択したファイ...
-
特定のファイルを他のプロセス...
-
VB6にてネットワーク上にある共...
-
どうやってもFor文を抜けてしま...
-
Word VBA。各マクロの間に待ち...
-
エクセル VBAで複数セル選択時...
-
【VBA】エラー処理で別プロシー...
-
フォルダのアクセス権確認について
-
VBA For Each 〜 複数条件について
-
StatusStripの表示が更新されな...
-
【C#】Page_Loadさせない方法に...
おすすめ情報