UWSCとCOM

UWSCをもっと活用するためにCOMの解説をします。
「分かりやすい説明」をモットーにかなり簡略化した概要となっております。

COMって何?

そもそも「COM」って何でしょうか?
.com(ドットコム)の「COM」じゃありませんよ。
Component Object Model」(コンポーネント・オブジェクト・モデル)
の略です。
日本語に無理やり訳すと、「対象の構成の仕様」と言ったところでしょうか。 これだけ聞いても意味がわかりませんね。

COMはマイクロソフト社(WindowsやExcel、InternetExplorerで有名なあの会社)が提唱する、ソフトウェアの仕様、決まり、技術のことです。

「ソフトウェアはこのように作りましょう」とか
「こういう命令をするとソフトウェアはこのように動くようにしましょう」
という規則集みたいなものと捉えればOKです。

COMがあるとどうなるの?

「ソフトウェアの再利用」が可能/容易になります。
もっと分かりやすく言うと、COMが使えることで、そのソフトウェアを
他のソフトウェアから使えたりします。
つまり、UWSCで操作可能になるのです!!

COMを使えないとどうなるの?

例えばExcelを考えて見ましょう。
ExcelはCOMを使用して開発されたソフトウェアです。

//こうするとExcelが立ち上がります
EXCEL = CREATEOLEOBJ("Excel.Application")
EXCEL.visible = True
EXCEL.workbooks.Add

さて問題
Excelでデータを入力したり、計算させたりするにはどうすればいいでしょうか?
答えは簡単、Excelを立ち上げて、出てきたシートにデータを入力すればOKです。

当たり前過ぎてピンときませんが、
ここで言いたい事は、「Excelのデータを操作するにはExcelを使います」という単純なコトです。

ふつう、あるソフトウェアから全く別のソフトウェアを操作することはできません。
Windowsに最初から備わっている電卓やメモ帳。これらからExcelの操作ってできないですよね。

電卓やメモ帳にはCOMを操作する機能が用意されていないから、
そう思って頂ければOKです。

UWSCからExcelを操作しようと思った場合、最初に思いつくのは
・Excelのアイコンをクリックして起動する
・ショートカットキーを送ってセルをコピー&ペーストする
こういったマウスやキーボードを介した泥臭い作業でしょう。
これでは、ワークブックを追加するような単純な作業でも、
くたびれる事に違いありません。そこでCOMの出番なのです。

ふつうExcelのデータはExcelで操作します

ふつうExcelのデータはExcelで操作します

ExcelはCOMを使用して開発されたソフトウェアです。
つまり「再利用」するための「仕様」が決まっているということです。

・こういう命令をすればExcelが立ち上がる

EXCELの起動

EXCELの起動


・こういう命令をすればセルに値を書き込める

セルに値入力

セルに値入力


という諸々の命令が明確に決まっています。

COMのメリット

簡単に言えば、高速&確実な操作が実現できます。
例えばInternet ExplorerやExcelの起動を考えてみましょう。

UWSCや普通の操作でそれらを起動するには、
・アイコンをクリックする
・exeファイルをたたく
と言った操作が考えられます。

しかし、それってかなり低速&不確実な操作ですよね
・カーソルを移動する
・クリックをする

という余計なアクション必要だったり

・アイコンの位置が変わったら対応できない
・exeファイルのパスが変わったら対応できない
という環境によって異なる不確実さが常に懸念されます。

しかし、COMの存在によって
直接ソフトウェアに命令&通信を行うことができるのです。
余計なものを介さずに、実行したい処理を送るので「高速&確実」なのですね。

それではUWSCとCOM、はじめてみよう

COMが使えるソフトはたくさんありますが、
代表的なInternetExplorerとExcelを使った解説を
ここでは行っていきたいと思います。
これらのCOMはそれぞれのソフトウェアの仕様とも言うべきものなので
UWSCのヘルプにはそんなに出てはきません。
※ファミコンの説明書にはファミコン自体の使い方はあっても、
普通はゲームソフトの説明は載っていませんよね。それと同じです。

でも、大丈夫
上級者向けカテゴリーで解説するUWSCとCOMの組み合わせで
もっと高速&確実な自動化ライフを充実させましょう。


2012年6月27日

このページの先頭へ