Outlook) (Folder.GetStorage 方法
取得父資料夾上的StorageItem物件,以儲存 Outlook 方案的資料。
語法
expression。 GetStorage
( _StorageIdentifier_
, _StorageIdentifierType_
)
表達 代表 Folder 物件的 變數。
參數
名稱 | 必要/選用 | 資料類型 | 描述 |
---|---|---|---|
StorageIdentifier | 必要 | 字串 | StorageItem 物件的識別碼;根據識別碼類型,其值可能代表項目 ID、郵件類別或主旨。 |
StorageIdentifierType | 必要 | OlStorageIdentifierType | 會指定 StorageItem 物件之識別碼的類型。 |
傳回值
用來儲存解決方案資料的 StorageItem 物件。
註解
GetStorage方法會使用StorageIdentifier所指定的識別碼,取得Folder物件上的StorageItem,並具有StorageIdentifierType所指定的識別碼類型。 StorageItem 是 Folder 中的隱藏項目,會隨著帳戶漫遊,而且在連線和離線時都可使用。
如果您使用StorageIdentifierType的olIdentifyByEntryID值來指定StorageItem的EntryID,則 GetStorage方法會傳回具有指定EntryID的StorageItem。 如果使用該 EntryID 無法找到 StorageItem,或是 StorageItem 並不存在,GetStorage 方法便會引發錯誤。
如果您使用StorageIdentifierType的olIdentifyByMessageClass值來指定StorageItem的訊息類別,則 GetStorage方法會傳回具有指定之訊息類別的StorageItem。 如果有多個項目具有相同的郵件類別,GetStorage 方法便會傳回具有最近 PR_LAST_MODIFICATION_TIME 的項目。 如果存在具有指定之郵件類別的 StorageItem,GetStorage 方法便會以 StorageIdentifier 所指定的郵件類別建立新的 StorageItem。
如果您指定StorageItem的Subject,則 GetStorage 方法會以 GetStorage呼叫中指定的Subject傳回StorageItem。 如果有多個項目具有相同的 Subject,GetStorage 方法則會傳回具有最近 PR_LAST_MODIFICATION_TIME 的項目。 如果指定的Subject沒有StorageItem存在,則 GetStorage方法會使用StorageIdentifier所指定的Subject建立新的StorageItem。
如果資料夾的存放區類型不受支援,則 GetStorage 會傳回錯誤。 當呼叫 GetStorage 時,下列存放區會傳回錯誤:
Hotmail 存放區
網際網路訊息存取通訊協定 (IMAP) 存放區
委派存放區
公用資料夾存放區
新建立的StorageItem大小為零 (0) ,直到您對專案的Save方法進行明確呼叫為止。
如需為解決方案儲存資料的詳細資訊,請參閱儲存方案的資料。
範例
下列 Visual Basic for Applications 程式碼範例將示範如何使用 StorageItem 物件來儲存私人方案資料。 它會將資料儲存在 [收件匣] 資料夾之 StorageItem 物件的自訂屬性中。 下面將描述這些步驟:
程式碼範例會呼叫 GetStorage ,以取得在 [收件匣] 中主旨為 「My Private Storage」 的現有 StorageItem 物件。 如果具有該主旨的 StorageItem 不存在,GetStorage 就會建立具有該主旨的 StorageItem 物件。
如果 StorageItem 是新建立的,此程式碼範例就會為物件建立自訂屬性 "Order Number"。 請注意,"Order Number" 是 [收件匣] 中隱藏項目的屬性。
程式碼範例接著會將值指派給 「Order Number」,並儲存 StorageItem 物件。
Sub AssignStorageData()
Dim oInbox As Outlook.Folder
Dim myStorage As Outlook.StorageItem
Set oInbox = Application.Session.GetDefaultFolder(olFolderInbox)
' Get an existing instance of StorageItem, or create new if it doesn't exist
Set myStorage = oInbox.GetStorage("My Private Storage", olIdentifyBySubject)
' If StorageItem is new, add a custom property for Order Number
If myStorage.Size = 0 Then
myStorage.UserProperties.Add "Order Number", olNumber
End If
' Assign a value to the custom property
myStorage.UserProperties("Order Number").Value = 100
myStorage.Save
End Sub
另請參閱
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。