[xyzzy:01912] OLE 対応、ありがとうございました
- Subject: [xyzzy:01912] OLE 対応、ありがとうございました
- From: "hiroyasu ohasi" <hohasi@xxxxxxxxxxxxxxxx>
- X-mailer: Microsoft Outlook Express 4.72.3110.5
亀井さん、逸見さん、こんにちわ。大橋です。
亀井さん、OLE対応、ありがとうございました。
感激です。
さっそく、亀井さんが[xyzzy:01900] に掲載して下さったサンプルを動かしてみまし
た。わたしの環境では2行目だけうまくいかなかったので、変更しました。素晴らし
いです。
(setq application (ole-create-object "Excel.Application"))
(ole-putprop application 'visible 1) ; <== 一部変更
(setq workbook (ole-method (ole-getprop application 'Workbooks) 'Add))
(setq worksheet (ole-getprop workbook 'Worksheets 1))
(ole-putprop (ole-method worksheet 'Range "A1:D1") 'value #("North" "South"
"East" "West"))
亀井さん>lisp ではこんな感じになると思うんですが、なんかいまいちかっこ悪
亀井さん>いんですよね。
そうでしょうか。VBやRubyでコーディングすると、確かにフラットな感じに書けてお
しゃれに見えますが、
●オブジェクト.XXXのXXXがプロパティなのかメソッドなのか、あいまいな感じがし
ます。
●プロパティを扱う場合、putしようとしているのかgetしようとしているのか、あい
まいな感じがします。
わたしは亀井さんの仕様の方がメリハリがあって好きです。
逸見さん>大橋さんがやられたいという、NOTESへのアクセスについては、
逸見さん>xyzzyから直接NOTESにアクセスするのではなく、一度中間層(抽象レベ
ル)
逸見さん>を通してから、アクセスする方が美しいのではないでしょうか?
逸見さんのおっしゃる「通信サーバー」を置くやり方は、とても美しいし、OLEが本
質的にアプリケーション間通信であることを思うと、OLEの性格にあった方法かもし
れませんね。
最後にひとつ質問ですが、VBですと、for each ... next という構文で、dolistによ
うにOLEのコレクションの各要素をなめながらループ処理できるのですが、xyzz
y Lispではどう書けばよろしいのでしょうか。
大橋 弘靖 <hohasi@xxxxxxxxxxxxxxxx>