エクセルのVisual BasicからLotusNotesの電子メールを送信する方法、プログラムについて教えていただけますか。送信に至らず、宛先、CC、件名、本文欄に入力された状態でNotesの新規メールが作成された状態にしたいと思っています。

回答の条件
  • 1人2回まで
  • 登録:2007/10/10 07:00:58
  • 終了:2007/10/10 11:21:49

回答(2件)

id:Mook No.1

Mook回答回数1312ベストアンサー獲得回数3912007/10/10 10:07:17

ポイント42pt

開いた状態にするのはできませんでしたが、ドラフトに保存した状態にするコードです。

ノーツを開いた状態で実行し、実行後にNotes の 「メール」⇒「ドラフト」で F9 を押してください。

Const EMBED_ATTACHMENT As Integer = 1454
Const MAIL_SEND = 1
Const MAIL_SAVE = 2

'-------------------------------------------------------------------
'  Notesを起動した状態で実行
'-------------------------------------------------------------------
Public Sub SaveNotesMail()
    Dim mailMode As Integer
'-----------------------------------
' ***  動作モード ***
'   保存:MAIL_SAVE
'   送信:MAIL_SEND
'-----------------------------------
    mailMode = MAIL_SAVE

    Dim wkNSes As Object    ' lotus.NOTESSESSION
    Dim wkNDB As Object     ' lotus.NOTESDATABASE
    Dim wkNDoc As Object    ' lotus.NOTESDOCUMENT
    Dim wkNRtItem As Object ' lotus.NOTESRICHTEXTITEM
    Dim wkNAtt As Object    ' lotus.NOTESEMBEDDEDOBJECT

    Set wkNSes = CreateObject("Notes.NotesSession")
    Set wkNDB = wkNSes.GetDatabase("", "")
    wkNDB.OpenMail

    Set wkNDoc = wkNDB.CreateDocument()
    
'-----------------------------------
' ***  件名 ***
'-----------------------------------
    wkNDoc.Subject = "テスト(タイトル)"
'-----------------------------------
' ***  宛先 ***
'-----------------------------------
    wkNDoc.SendTo = Array("fwix3503@hatena.ne.jp")
'-----------------------------------
' ***  CC ***
'-----------------------------------
    wkNDoc.CopyTo = Array("Mook@hatena.ne.jp")
'-----------------------------------
' ***  BCC ***
'-----------------------------------
    'wkNDoc.blindCopyTo = Array("xxx@xxx")

'-----------------------------------
' ***  本文 ***
'-----------------------------------
    Set wkNRtItem = wkNDoc.CreateRichTextItem("BODY")
    ' 本文をセットする
    With wkNRtItem
        .APPENDTEXT "本文(1行目)"
        .ADDNEWLINE 1
        .APPENDTEXT "本文(2行目)"
        .ADDNEWLINE 1
    End With

'-----------------------------------
' ***  保存 / 送信 ***
'-----------------------------------
    Select Case mailMode
    Case MAIL_SEND
        wkNDoc.Send False
        MsgBox "メールを送信しました", vbOKOnly + vbInformation
    Case MAIL_SAVE
        wkNDoc.Save True, False
        MsgBox "メールをドラフトに保存しました", vbOKOnly + vbInformation
    End Select
End Sub
id:fwix3503

有難うございました。

非常に助かりました。

何も言うことは無いです。素晴らしいプログラムですね。

2007/10/10 11:21:00
id:F-15X No.2

F-15X回答回数111ベストアンサー獲得回数132007/10/10 10:21:17

ポイント28pt

こちらの1~4までの手順でいけるかと思います。


◆ ドミノCOM実装~コーディング編

id:fwix3503

有難うございました。参考になりました。

2007/10/10 11:21:02

コメントはまだありません

この質問への反応(ブックマークコメント)

トラックバック

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません