本ページには広告が含まれています。
目次
指定した種類のNameSpace オブジェクトを返します。
- 構文
- NameSpace = Application.GetNamespace( Type )
- 引数
- Type(String)省略可
- 指定できるのは MAPI のみ
- 戻り値
- 指定した名前空間を表すNameSpace オブジェクト
Application オブジェクトを返すメソッド・プロパティ
- Application.GetNamespace メソッド
- Outlookアプリケーションの親を表すApplication オブジェクトを返します。
プログラム実行例
アカウント毎に迷惑メールの件数を集計(Outlook)
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folders = NameSpace.Folders
FOR oFolder IN Folders
//PRINT "■" + oFolder.Name
Folder = NameSpace.Folders(oFolder.Name).Folders("迷惑メール")
PRINT oFolder.Name + ":" + Folder.Items.Count + "件"
NEXT
結果
Yahoo!: 42516件
Android: 0件
使用関数
受信トレイに新しいフォルダを作成(Outlook)
CONST olFolderInbox = 6
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folder = NameSpace.GetDefaultFolder(olFolderInbox)
TRY
Folder.Folders.Add("NewFolder")
EXCEPT
MSGBOX("フォルダを作成できませんでした。")
ENDTRY
使用関数
指定期間に受信したメールを取得(Outlook)
CONST olFolderInbox = 6
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folder = NameSpace.GetDefaultFolder(olFolderInbox)
DIM Items = Folder.Items
DIM start = "2022/01/01"
DIM end = "2022/01/31"
Items = Items.Restrict("[ReceivedTime] >= '" + start + "' AND [ReceivedTime] < '" + end + "'")
FOR MailItem IN Items
WITH MailItem
PRINT "受信日時:<#TAB>" + .ReceivedTime
PRINT "件名:<#TAB><#TAB>" + .Subject
PRINT "----------"
ENDWITH
NEXT
使用関数
指定期間のメール情報を取得(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
使用関数
指定期間に受信したメールからURLを抽出(Outlook)
HASHTBL url = HASH_SORT
CONST olFolderInbox = 6
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/07"
Items = Items.Restrict("[ReceivedTime] >= '" + start + "' AND [ReceivedTime] <= '" + end + "'")
DIM row = 1
FOR MailItem IN Items
FUKIDASI(row + "/" + Items.Count)
DIM Matches = reExecute(MailItem.Body, "https?://([\w-]+\.)+[\w-]+(/[\w-./?%&=]*)?")
FOR Match IN Matches
url[Match.Value] = url[Match.Value] + 1
NEXT
row = row + 1
NEXT
FOR i = 0 TO LENGTH(url) - 1
FUKIDASI(i + "/" + (LENGTH(url) - 1))
PRINT url[i, HASH_KEY]
NEXT
使用関数
解説
過去7日間に受信した迷惑メールの受信日時とメールアドレスを取得
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folders = NameSpace.Folders("Yahoo!_新").Folders("迷惑メール")
DIM startDate = dateAdd("d", -7, today())
DIM endDate = dateAdd("d", -1, today())
DIM Items = Folders.Items.Restrict("[ReceivedTime] >= '" + startDate + "' AND [ReceivedTime] < '" + endDate + "'")
DIM count = Items.Count
Items.Sort("受信日時")
FOR Index = 1 TO count
WITH Items.Item(Index)
PRINT .ReceivedTime + "<#TAB>" + .SenderEmailAddress
ENDWITH
NEXT
使用関数
解説
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Stores = NameSpace.Stores
FOR Store IN Stores
PRINT Store.FilePath
NEXT
結果
D:\Outlook\info1@example.com.pst
C:\Users\username\AppData\Local\Microsoft\Outlook\info2@example.com.pst
D:\Outlook\info3@example.com.pst
使用関数
既定フォルダの最新のメールを取得
既定フォルダで受信した最新のメールを取得し、差出人名、件名、受信日時を出力します。
CONST olFolderInbox = 6
DIM Outlook = CREATEOLEOBJ("Outlook.Application")
DIM NameSpace = Outlook.GetNameSpace("MAPI")
DIM Folder = NameSpace.GetDefaultFolder(olFolderInbox)
DIM Items = Folder.Items
Items.Sort("[ReceivedTime]", FALSE)
DIM MailItem = Items.GetLast
WITH MailItem
PRINT "差出人名," + .SenderName
PRINT "件名," + .Subject
PRINT "受信日時," + .ReceivedTime
ENDWITH
使用関数
解説
関連記事
- Account オブジェクト
- Accountオブジェクトは、現在のプロファイルに定義されているアカウントを表します。
- Accounts オブジェクト
- 現在のプロファイルで利用できるアカウントを表すAccountオブジェクトのセットが含まれています。
- Application オブジェクト
- Outlookアプリケーション全体を表します。
- AppointmentItem オブジェクト
- 新しい予定を表すAppointmentItemオブジェクトを作成します。
- Folder オブジェクト
- Folders オブジェクト
- Items オブジェクト
- MailItem オブジェクト
- メールメッセージを表します。
- NameSpace オブジェクト
- Outlookのメールや予定表、連絡先といった様々なデータにアクセスすることができます。
- Recipient オブジェクト