ここから本文です

解決済みのQ&A

エクセルのVBAを使って、ノーツメールを送りたいのですが

lemontea_daさん

エクセルのVBAを使って、ノーツメールを送りたいのですが

エクセルのVBAを使って、以下の要領でノーツメールを送信したいのですが、どのようにVBA
に記述したらよろしいのでしょうか?

①ノーツメールに指定のブックを添付します。(ブック名:テスト.xls) ブックはCドライブの直下に置かれています。
②宛先アドレスは前記①のブックの「sheet1」のセルA1に記載されています。
③件名は前記①のブックの「sheet1」のセルB1に記載されています。
④本文は改行を含む複数行を想定しています。
⑤CC・BCCは設定しません。

ちなみに、エクセルは2003、OSはXPとなります。


何卒、よろしくお願いします。

違反報告

ベストアンサーに選ばれた回答

porihikoletskunさん

こんにちは。
http://homepage3.nifty.com/belie/vba/vba033.htm
が一番サンプルとして有効です。
Excel97でNotes4.6用に作ったものだが、多分 どのバージョンでも動くと思います。


Const EMBED_ATTACHMENT As Integer = 1454

Public Sub SendNotesMail()
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
Dim AttFName As String ' 添付ファイル名(フルパス)

' Notesのセッションを起動する
Set wkNSes = CreateObject("Notes.NotesSession")
' NotesDatabaseオブジェクトを作成し、そのデータベースを開く
Set wkNDB = wkNSes.GETDATABASE("", "")
' NotesDBをユーザーのメールDBに割り当てた後に開く
wkNDB.OpenMail

' NotesDBに文書を作成し、新規文書をオブジェクト変数にセットする
Set wkNDoc = wkNDB.CREATEDOCUMENT()
' 件名をセットする
wkNDoc.Subject = "テスト(タイトル)"
' 宛先をセットする
wkNDoc.SendTo = Array("belie.kondo@mbh.nifty.com")
'wkNDoc.CopyTo = Array("xxx@xxx")
'wkNDoc.blindCopyTo = Array("xxx@xxx")

' 文書にリッチテキストアイテムを作成する
Set wkNRtItem = wkNDoc.CreateRichTextItem("BODY")
' 本文をセットする
With wkNRtItem
.APPENDTEXT "本文(1行目)"
.ADDNEWLINE 1
.APPENDTEXT "本文(2行目)"
.ADDNEWLINE 2
' 添付ファイル名をセットする
AttFName = "D:\TEST\Book1.xls"
' ファイルを添付する
Set wkNAtt = .EmbedObject(EMBED_ATTACHMENT ,"" ,AttFName)
.ADDTAB 1
.ADDNEWLINE 1
End With

' メールを送信する
wkNDoc.Send False

' オブジェクト変数を解放する
Set wkNAtt = Nothing
Set wkNRtItem = Nothing
Set wkNDoc = Nothing
Set wkNDB = Nothing
Set wkNSes = Nothing

MsgBox "メール発信", vbOKOnly + vbInformation
End Sub
Notesが起動していることが前提。


これ、添付の操作もありますし、VBAにそのまま使えるようなメソッドです。
それから、「エクセルの中のメールアドレス」ですが、
ブックを開いて、アドレスなどを変数に取得して、ブックを閉じる、
というように、順番に処理したら、問題ないです。
(添付する瞬間はブックを閉じておいてください)

  • 回答日時:2010/7/24 13:39:28

質問した人からのコメント

  • 成功porihikoletskun様
    本日、会社で行ってみました。完璧でした。
    いただきました、コードをアレンジして、異なる宛先に対して、宛先毎の固有のファイルを添付し、メール送信するようなことにトライしてみます。
    本当にありがとうございました。
  • コメント日時:2010/7/26 21:42:39

グレード

このQ&Aはまだナイス!されていません。
役に立ったと思った回答に、ナイス!してみよう!

あなたにおすすめの解決済みの質問

Excelブック間でのデータ抽出に関するVBAについて皆様、いくら考えても答えが見つからないので、ご教授...
ブック間でのデータ抽出について皆様、いくら考えても答えが見つからないので、ご教授ください。ブック...
エクセルで全体から最大値を求めた後、その最大値のセルから+100~+10000行の間での最大値を求めるVBAの...

あなたにおすすめの知恵ノート

エクセルなどで利用する為にディレクトリ内のファイル名一覧をテキスト化する方法

PR

carview愛車無料査定
PR
Yahoo!知恵袋のQ&Aアプリが登場! さくさく検索、かんたんに質問や回答ができる! Yahoo!知恵袋アプリ

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。

お客様自身の責任と判断で、ご利用ください。


お得情報

<九州エリア引換限定>
サントリーコーヒー ボス 超
お試しキャンペーン!

その他のキャンペーン

知恵コレに追加する

閉じる

知恵コレクションをするID/ニックネームを選択し、「追加する」ボタンを押してください。
※知恵コレクションに追加された質問や知恵ノートは選択されたID/ニックネームのMy知恵袋で確認できます。

ほかのID/ニックネームで利用登録する