ブログジャンル

にほんブログ村 為替ブログ 100通貨単位・1000通貨単位へ
にほんブログ村の為替ブログランキングに参加中です。応援よろしくお願いいたします♪

検索フォーム


カレンダー

05 | 2011/06 | 07
- - - 1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 - -

最新記事


最新コメント


最新トラックバック


月別アーカイブ


カテゴリ


リンク


スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

第02回 自動売買用プログラム - for ExcelVBA

おはようございます。

本日は2回目の講座となります。
1回目の講座はこちらからどうぞ!
→エクセルVBAの画面を表示させる(さらに標準モジュールを追加する)

今日の課題は「IEを起動し、目的のページを開く。」です。
作業時間は約20分です。

それでは、よーいスタート!


まずは課題の流れをご紹介。

1.標準モジュール(例えば、Module1とか)を開きます。
2.開いたら真っ白なキャンパスにプログラムをコピーして貼り付けします。
3.マクロ(プログラム)の実行をします。

以上、3件です。


1.標準モジュールを開きます。
すでに標準モジュールが用意できているはずですので、選択してやるだけでオッケーです!
20110612-vba02

2.開いたら画像のように下記のプログラムをコピーして貼り付けします。
20110612-vba03


-------------------- ここから --------------------
'2011/06/12 第02回 自動売買用プログラム - for ExcelVBA
'本日の課題:「IEを起動し、目的のページを開く。」

Sub IE_open()


'IE起動
Dim objIE As Object 'IE用の変数を定義します。
Set objIE = CreateObject("InternetExplorer.Application") 'IE用のオブジェクトを作成します。
objIE.Visible = True 'IEのウィンドウをTrueで可視状態にします。 Falseなら見えません。

'目的のページのURLを指定し、開きます。
objIE.Navigate "http://www.google.co.jp/"

'ページの表示完了を待ちます。
While objIE.ReadyState <> 4 Or objIE.Busy = True
DoEvents
Wend

'課題を達成した喜びのコメントをイミディエイトに書き出す
Debug.Print "めっちゃ嬉しいです!"


End Sub
-------------------- ここまで --------------------


3.上段メニューからマクロ(プログラム)の実行をします。
20110612-vba04

いかがでしょう?
IEが立ち上がり、グーグルのページが開いたでしょうか!?
20110612-vba05


環境によってはエラーが出た人もいるかと思います。
たぶん、「ページの表示完了を待ちます。」のプログラムのところ。
とりあえず、その場合はその箇所のプログラムを削除して動かしてみてください。
これでうまくいくはずです。
-------------------- ここから --------------------
'ページの表示完了を待ちます。
While objIE.ReadyState <> 4 Or objIE.Busy = True
DoEvents
Wend
-------------------- ここまで --------------------


それでは、素人によるプログラムの解説をしますね。
まず、「IE起動」部分ですが、これは決まり文句だと思ってください。
IEを起動する際はとりあえず書いておけばオッケーです!

次に「目的のページのURLを指定し、開きます。」ですが、
通常使うブラウザと一緒でURLを指定するだけです。
このURL部分を変更すれば、好きなページに飛ぶことができます。
例 http://www.google.co.jp/ → http://www.yahoo.co.jp/

んで、「ページの表示完了を待ちます。」のところは、
まあこれも決まり文句みたいなもんで、
(正直、説明できないので詳しく知りたい方は三流さんのページなどをご覧ください。)
IEが読み込み中になっているときは待機するという意味です。
この部分はスリープを使ったり、ウエイトを使ったり、人によって違いますね。

そして、最後におまけの「課題を達成した喜びのコメントをイミディエイトに書き出す」
これは「""」の間の文字や変数を表示させることができます。
使い道としては、どこまでプログラムが動いたか分かるよう、デバッグ(ログ)用に使うことができます。
例えば、5項目のプログラムを実行して、それぞれに異なったコメントのDebug.Printを記述。
プログラムを実行するとエラーが出たので、イミディエイトのコメントをみてバグを取り除く。みたいな感じです。
(すんません、間違った解釈かもw)

イミディエイト画面が出ていない方は、上段メニューの表示→イミディエイトウィンドウ(CTRL+G)をしてください。
20110612-vba06



ちなみにVBAでは「'」シングルクォーテーション(緑文字)を使うと、
プログラムとして認識しないのでちょっとした説明などをメモ書きしておくときに便利です。
20110612-vba07



そんなこんなで、逃げるように本日の講義は終了します!
ではでは、お疲れ様でした♪


追記
このブログのテンプレートはメインの横幅が狭いので、プログラムには向いてないですね。
とても見にくいや。申し訳ない。




スポンサーサイト

 | ホーム | 


上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。