LotusScriptのメソッドが実行できない……
実行時エラー438に悩まされる
オブジェクトは、このプロパティまたはメソッドをサポートしていません
80箇所ぐらいの宛先に、それぞれ添付ファイルの異なるメールを送信する、というしちめんどくさい仕事をすることになった。まあ、Excelで表さえ作ったらメールを送ること自体は楽勝(参考)なんですが、前任の方が非常に丁寧なお仕事をなさる方で、何と、
全てのメールについてメール文書をプリントアウトしてファイル
してあったのです。
マジか……。
で、調べてみた
LotusScript使ったら自動印刷ぐらいできるんじゃね?
と思ったときにはココですよ。
まずは、コチラ。
Call notesUIDocument.Print( [ numCopies% [, fromPage% [, toPage% [, draft [, printerName]]]]] )
んで、
パラメータ
numCopies%
Integer 型。省略可能。印刷する部数です。このパラメータを省略すると、[印刷] ダイアログボックスが表示されます。0 を指定すると 1 部印刷されます。
だなんて書いてあるもんだから、当然
notesUIDocument.Print(0)
と書けば印刷してくれるはず……。
あ、ちなみに変数notesUIDocumentというのは、
Dim notesSession As Object 'NotesSession' Dim notesDatabase As Object 'NotesDatabase' Dim notesDocument As Object 'NotesDocument' Dim notesUIWorkSpace As Object 'NotesUIWorkspace' Dim notesUIDocument As Object 'NotesUIDocument' Set notesSession = CreateObject("Notes.NotesSession") Set notesUIWorkSpace = CreateObject("Notes.NotesUIWorkspace") Set notesDatabase = notesSession.GetDatabase("", "") notesDatabase.OpenMail Set notesDocument = notesDatabase.CreateDocument() notesDocument.Save False, False Set notesUIDocument = notesUIWorkSpace.EditDocument(True, notesDocument, False)
こういう順序で中身をセットしています(本文や添付ファイルなんかをセットした部分は省略)。
ところが、実際には
notesUIDocument.Print (0)
のところで実行時エラー438が出る。
お願い
たぶん、LotusNotesという外部アプリのメソッド名がVBAのメソッド名とかぶっているのがイカンのだと思うのだけれど、打開策をご存じの方がいらっしゃったら教えろてください
あ、仕事そのものは、結局手作業でやりました。