2017-12-24 8 views
0

APIを使用してウェブサイトからデータを取得して現在の価格を取得するマクロを作成しました。私はこれを10分ごとに自動的に実行して、生きている価格の大まかなアイデアを得たいと言っています。VBAウェブサイトからデータを取得するマクロを自動的に実行

私は、次を使用してこれを行うにしようとしている:

Sub Test() 
    Application.OnTime Now + TimeValue("00:10:00"), "MyMacro" 
End Sub 

それが動作していないようですが...私はおそらく何かを見下ろす午前自動的に実行するサブルーチンを得るために新たなんです。

ありがとうございました。

+0

あなたが投稿したものは、 'Test'が実行されてから10分後に自動的に' MyMacro'を実行します。 「それは働いていないようです」とはどういう意味ですか?エラーメッセージが表示されますか? (もしそうなら、エラーは何ですか?) 'MyMacro'をまったく実行しませんか? (もしそうなら、それはあなたが10分の間隔の間にExcelを完全に閉じたからでしょうか?)「MyMacro」はあなたが考えるべきことをしませんか?もしそうなら、 'MyMacro'のコードを投稿してください。 – YowE3K

答えて

1

マクロが1回だけ実行されるようにスケジュール設定されている可能性があります。あなたはそれが最初の時間の後に自分自身を再スケジュールするように設定する必要があります。

Sub Schedule() 
    Application.OnTime Now + TimeValue("00:10:00"), "MyMacro" 
End Sub 

Sub MyMacro() 
    Schedule ' (Reschedule at the top to run every 10 minutes) 

    'Do something... 

    '(Or reschedule at the bottom to run 10 minutes *after* the execution) 
End Sub 
+0

これは起こっていました。ありがとう。 – VBACODER

+0

あなたのプロジェクトで素晴らしい、幸運を祈る – JPR

0

私はそれはあなたが唯一のものに専念マシンを持っていない限り、Excelは、常に動作しているのは素晴らしいアイデアだとは思いません。または、タスクスケジューラを使用してExcelを開いてマクロを実行することもできます。 「タスクの作成」ダイアログで、「トリガー」タブをクリックします。次に、「新規」ボタンをクリックします。 New Triggerダイアログには、Advanced Settingsセクションが表示されます。これには、繰り返しタスク領域があります。そのボックスにチェックマークをつけてプリセット値を選択するか、独自の値を入力することができます。

enter image description here

は、以下のスクリーンショットを参照してください。

関連する問題