こんな時、こう使います

 
 オリジナルのHTMLページを作って、どこにいても最新情報をゲットしたい! 
きっかけは、携帯電話のネットから欲しい情報を引き出せないことでした...

最新のモバイル環境を持たない私。外出時の唯一の頼りは、携帯のインターネット。しかし、オヤジの私にはこれが使いにくく、欲しい情報をタイムリーに引き出せない!パソコンは達人の域を自負していて、キーボード使いはお手の物だが、携帯の文字入力には閉口する。最近、老眼もでてきたし、ムダに指先が大きい私にはURLの入力もおぼつかず、結局、携帯のインターネット利用をあきらめてしまう。若者が目にもとまらぬ速さで携帯のキーを叩き、文字入力しているサマは驚愕の一言である。
また、PCのネットなら無料で調べる事ができる情報も、携帯では「有料」という差別もオヤジとしては納得がいかない。こんな些細なことで若者から金を巻き上げている携帯業界に怒りさえ感じる...

人生の絶頂期であるべき貴重な時期を、政府の失政による「失われた10年」でパスされてしまった私は、「無駄なもの、ウサンくさいものには金は払わぬ」という習性が染み付いているのだ。

「月額利用料」や「情報提供料」などのコストをかけずに、「欲しい情報をいつでもどこでも利用できる環境を作りたい!

機能197:Webクエリ情報取得」は、こんなオヤジの切実な想いから誕生したアドインなのです。

この機能の説明には、「いくつかのWebサイトを自動巡回して、必要なデータを取得し、データをひとつのシートに集約するもの」としていますが、実は、自分専用のWebページを作成するためのフロントエンド処理を行う目的で開発したものです。
「欲しい情報は自分で探して、自分で編集して、自分で作ってしまえ!」という、オールドプログラマのど根性が開発のきっかけになっています。
 


Webページ用のシートを作成
Webページ(HTMLファイル)作成
Webサーバーへのアップロード
Webページの閲覧

  Web情報取得の自動化
このコラムでは、機能197:Webクエリ情報取得」を使ってオリジナルのWebページを作成する手順をご紹介します。

 Webページ用のシートを作成

機能197:Webクエリ情報取得」を使い、いくつかのWebサイトから必要な情報をかき集めてオリジナルのシートを作成します。
私の場合、経済情報(株価、為替、金価格)と主要ニュースを収集してシートを作成しています。
■ Webクエリの実行結果(転記先シート「MyInfo」)

 



Webクエリを実行した日付と時間をシート「FF情報取得セル定義」で指定したの「情報取得後に実行するマクロ」であるMyMacro2でセルに記入します。



マクロ「MyMacro2」の内容はこちら
 
日経新聞のサイト http://markets.nikkei.co.jp/kokunai/index.cfm (国内株・日本株・日経平均株価 - マネー&マーケット)から、日経平均株価と前日比のデータを取得します。
日経新聞のサイト http://markets.nikkei.co.jp/kawase/index.cfm (為替相場・外国為替レート・金利 - マネー&マーケット)から、円/ドルの為替相場と前日比のデータを取得します。
田中貴金属工業(株)のサイト http://gold.tanaka.co.jp/commodity/souba/ (金相場:本日の貴金属相場)から、金の買取価格と前日比のデータを取得します。
朝日新聞のサイト http://www.asahi.com/ (asahi.com速報ニュースサイト)からトップニュースの見出し()と内容()、過去のニュースの一覧()を取得します。
 
■ Webサイトからの情報取得



 

Webページ(HTMLファイル)作成

Webクエリで取得したデータを編集した集約シートをHTML化します。Excelの機能(ファイル−Webページとして保存)でWebページを作成すると、ファイル容量が大きくなり、携帯電話のブラウザで見ることができないので、単純なページを作成するマクロ(FF_CreateSimpleHTML)を作りました。
このマクロは、「情報取得後に実行するマクロMyMacro2から呼び出されます。
■ MyInfo.htmの内容
<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=shift_jis'>
<title>MyInfo</title>
</head>
<body>
<p>
2006.06.13 18:45<br>
【経済情報】<br>
■日経平均株価 14,218.60(*大引)<br>
-前日比 - 614.41 (- 4.142%)<br>
■円ドルレート 114.48 - 114.49 (18:26)<br>
-前日比 + 0.29 (+ 0.254%)<br>
■金買取価格 2,287円<br>
-前日比 -18円<br>
【ニュース】 厚労省、喫煙率引き下げに数値目標<br>
厚労省は、2010年までに喫煙率を高くても男性38%、女性10%に抑えるなど、3段階の数値目標を審議会の専門部会に提案した。たばこ業界や自民党内には反対する意見が根強くある。(17:46) [記事全文]<br>
CTの千倍精密に、がんを立体的に表示 筑波大など開発(17:36)<br>
仮出所中に2人殺害 中山被告の死刑確定へ(17:05)<br>
「ドシーン」衝撃、車内から悲鳴 都電追突事故写真付き記事(16:17)<br>
日経平均614円安の1万4218円 年初来安値を更新(15:34)<br>
ビールに前立腺がん予防効果 1日17本飲めば 米大学(16:57)<br>
</p>
</body>
</html>
 
 

Webサーバーへのアップロード

で作成したHTMLファイル(MyInfo.htm)をWebサーバーにアップロードします。 作業の自動化をするため、サーバーへのアップロードには、DOSのFTPコマンドで行なうようにしました。
FTPコマンドを実行するDOSのバッチファイル(MyFTP.bat)を作成し、VBAのShellステートメントで実行します。(MyFTP.batは、「情報取得後に実行するマクロ MyMacro2 から 実行されます。)
■ MyInfo.batの内容
FTP -s:C:\MyFTPParam.txt
FTPコマンドで指定するパラメータはテキストファイル(MyFTPParam.txt)に記述しておきます。
 
■ MyFTPParam.txtの内容

OPEN xxxxxxxxxx   サーバーのIPアドレス
xxxxxxxxxx   FTPサーバーのユーザーID
xxxxxxxxxx   FTPサーバーのパスワード
put C:\MyInfo.htm htdocs/MyInfo.htm  HTMLファイルのアップード
quit  FTPコマンドの終了
 
 

Webページの閲覧

サイトにアップロードしたWebページを確認してみます。シートのデータを単純なHTMLファイルに変換してWebページを作成したので、PCのブラウザはもちろん、携帯電話のブラウザでもページの内容を閲覧する事ができます。
■ PCブラウザでのWebページ閲覧

 
■ 携帯ブラウザでのWebページ閲覧


 

Web情報取得の自動化

Webサイトからの情報取得は、 機能メニューの「Webクエリ実行」を実行した時点で行なわれます。

■ Webクエリの実行


また、機能197:Webクエリ情報取得」が利用可能な状態(アドインとしてExcelに登録されている)で
Webクエリが定義されているシート、及び、シート「
FF情報取得セル定義」が収録されているブックを開くと、自動的に情報収集がスタートします。
この特性を利用すると、定期的にブックを開くことにより、自動的にWebサイトから情報を収集してWebページを作成し、FTPでサイトにアップロードする一連の処理を行うことができるようになります。

作業の自動化に威力を発揮するのが、Windowsの「タスク」という便利な機能です(「プログラム」−「アクセサリ」−「システムツール」−「タスク」)。


タスクを定義する事により、任意の時間間隔で指定したExcelのブックを開くことができるようになりますので、Webサイトからの情報収集からサイトへのアップロードまでの処理を自動化することができるようになります。

■ タスクの定義


■ タスクのスケジュール詳細設定


タスクを用意する事により、不在時でもPCの電源を入れておけば定期的にタスクを実行することができ、最新情報をPC、あるいは携帯電話のブラウザで確認することができるようになります。
 


 
2015.06.11