本ページには広告が含まれています。
Outlookアイテムの宛先の受信者の表示名一覧を表す、セミコロン(;)で区切られた文字列型(String) の一覧を設定します。
- 構文
- MailItem.To
- 引数
- 戻り値
MailItem オブジェクトを返すメソッド・プロパティ
- MailItem.To プロパティ
- Items オブジェクトからItemオブジェクトを返します。
- Application.CreateItem メソッド
- 新しいOutlookのアイテムを表すオブジェクトを作成します。
使い方
宛先にinfo@example.comを設定します。
MailItem.To = "info@example.com"
複数の宛先を指定する場合はメールアドレスをセミコロン(;)で区切り指定します。
以下は宛先にuser1@example.comとuser2@example.comを設定する例です。
MailItem.To = "user1@example.com;user2@example.com"
プログラム実行例
指定期間のメール情報を取得(Outlook)
CONST olFolderInbox = 6
CONST xlTop = -4160
CONST xlLeft = -4131
DIM Excel = ExcelBoot()
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folder = NameSpace.GetDefaultFolder(olFolderInbox)
DIM Items = Folder.Items
DIM start = "2021/01/01"
DIM end = "2021/01/02"
Items = Items.Restrict("[ReceivedTime] >= '" + start + "' AND [ReceivedTime] < '" + end + "'")
DIM array[][1] = "受信日時", "ReceivedTime", + _
"送信者メールアドレス", "SenderEmailAddress", + _
"送信者", "SenderName", + _
"CC", "CC", + _
"BCC", "BCC", + _
"件名", "Subject", + _
"本文", "Body", + _
"HTML本文", "HTMLBody"
Excel.Application.ScreenUpdating = FALSE
FOR i = 0 TO UBound(array)
Excel.Cells(1, i + 1).Value = array[i][0]
NEXT
DIM row = 2
FOR MailItem IN Items
FUKIDASI(row + "/" + Items.Count)
WITH MailItem
FOR i = 0 TO UBound(array)
Excel.Cells(row, i + 1).Value = EVAL("." + array[i][1])
NEXT
ENDWITH
row = row + 1
NEXT
WITH Excel.Range("A1").CurrentRegion
.ColumnWidth = 20
.RowHeight = 30
.VerticalAlignment = xlTop
.HorizontalAlignment = xlLeft
ENDWITH
Excel.Application.ScreenUpdating = TRUE
//////////////////////////////////////////////////
// 【引数】
// path : 開くファイルのパス名
// 【戻り値】
// <a href="https://uwsc.jp/com/excel/" >Excel オブジェクト</a>
//////////////////////////////////////////////////
FUNCTION ExcelBoot(path = "")
DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
IFB path = "" THEN
Excel.Workbooks.Add
ELSE
DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
IFB FSO.GetParentFolderName(path) = "" THEN
path = GET_CUR_DIR + "\" + path
ENDIF
Excel.Workbooks.Open(path)
ENDIF
RESULT = Excel
FEND
//////////////////////////////////////////////////
// 【引数】
// inputs : 繰り返す文字列
// multiplier : inputsを繰り返す回数
// 【戻り値】
// inputsをmultiplier回を繰り返した文字列を返します
//////////////////////////////////////////////////
FUNCTION strRepeat(inputs, multiplier)
DIM res = ""
FOR n = 1 TO multiplier
res = res + inputs
NEXT
RESULT = res
FEND
//////////////////////////////////////////////////
// 【引数】
// arrayname : 上限値を求める配列の名前
// dimension : 返す次元を示す整数
// 【戻り値】
// 配列の上限値
//////////////////////////////////////////////////
FUNCTION UBound(arrayname[], dimension = 1)
RESULT = EVAL("RESIZE(arrayname" + strRepeat("[0]", dimension - 1) + ")")
FEND
使用関数
HTMLメールを送信(Outlook)
HTMLメールの本文は長くなるので、TEXTBLOCKで定義して代入しています。
CONST olMailItem = 0
CONST olFormatHTML = 2
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM MailItem = Outlook.Application.CreateItem(olMailItem)
WITH MailItem
.BodyFormat = olFormatHTML
.Subject = "HTMLメールのテスト"
.HTMLBody = Body
.To = "contact@example.com" // 送信先
Account = Outlook.Session.Accounts.Item("info@example.com") // 送信元
.SendUsingAccount = Account
.Send
ENDWITH
TEXTBLOCK Body
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional/a/EN" "https://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="viewport" content="target-densitydpi=device-dpi,width=device-width,maximum-scale=1.0,user-scalable=yes">
<meta http-equiv="Content-Language" content="ja">
<meta charset="shift_jis">
<title></title>
</head>
<body>
<table border="0" cellpadding="0" cellspacing="0" width="600px">
<tr>
<td><img alt="画像" src="http://example.com/image.jpg" width="600px" style="width:600px;"></td>
</tr>
<tr>
<table border="1px" cellpadding="0" cellspacing="0" width="600px">
<tr>
<td width="50%">テキスト1</td>
<td width="50%">テキスト2</td>
</tr>
</table>
</tr>
</table>
</body>
</html>
ENDTEXTBLOCK
使用関数
解説
関連記事
- MailItem オブジェクト
- メールメッセージを表します。
- Items.Restrict メソッド (Outlook)
- Items コレクションにフィルタを適用し、フィルタに一致する元のすべてのアイテムを含む新しいItems コレクションを返します。
- MailItem.Attachments プロパティ (Outlook)
- メールに添付されているすべての添付ファイルを表すOutlook.Toを返します。
- MailItem.BodyFormat プロパティ (Outlook)
- メール本文の形式を表すOlBodyFormatクラスの定数を取得または設定します。
- MailItem.HTMLBody プロパティ (Outlook)
- メールのHTML形式の本文を表す文字列型の値を取得または設定します。
- MailItem.Parent プロパティ (Outlook)
- 指定したオブジェクトの親オブジェクトを返します。
- MailItem.ReceivedTime プロパティ (Outlook)
- アイテムを受信した日付と時刻を示す日付型(Date)の値を取得します。
- CDO.From プロパティ
- メッセージの差出人(From)を指定します。
- AppointmentItem オブジェクト
- 新しい予定を表すAppointmentItemオブジェクトを作成します。
- Folder オブジェクト