Columns.Add-Methode (Outlook)
Fügt der Columns-Auflistung die durch Name angegebene Spalte hinzu und setzt die Tabelle zurück.
Syntax
Ausdruck. Hinzufügen (Name)
Ausdruck Eine Variable, die ein Columns-Objekt darstellt.
Parameter
Name | Erforderlich/Optional | Datentyp | Beschreibung |
---|---|---|---|
Name | Erforderlich | String | Der Name der Eigenschaft, die als Spalte hinzugefügt wird. |
Rückgabewert
Ein Column -Objekt, das die neue Spalte darstellt.
Hinweise
Columns.Add fügt die angegebene Spalte an das Ende der Columns -Auflistung für die Tabelle und setzt die Tabelle durch die aktuelle Zeile genau vor die erste Zeile der Tabelle verschieben. Wenn Columns.Add einen Fehler zurückgibt, wird die aktuelle Zeile nicht geändert.
Name kann ein expliziter integrierter Eigenschaftsname sein oder ein Eigenschaftsname, auf den mithilfe eines Namespace verwiesen wird. Der Verweis muss mit dem Namen aus dem englischen Gebietsschemas erfolgen. Weitere Informationen zum Verweisen auf Eigenschaften mithilfe von Namespaces finden Sie unter Verweisen auf Eigenschaften mithilfe von Namespaces.
Wenn Sie eine Eigenschaft hinzufügen, bei der es sich um eine explizite integrierte Eigenschaft im Objektmodell handelt, z. B. Contact.FirstName, müssen Sie Name als expliziten integrierten Eigenschaftennamen in Englisch angeben. Für bestimmte Arten von Eigenschaften, die das Format verwendet, wenn diese Eigenschaften die Spalten hinzufügen wirkt sich auf wie ihre Werte in der Tabelle ausgedrückt werden. Weitere Informationen zur Darstellung von Eigenschaftswerten in einem Table-Objekt finden Sie unter Faktoren, die sich auf die Darstellung von Eigenschaftswerten in den Klassen 'Table' und 'View' auswirken.
Wenn Sie eine benutzerdefinierte Eigenschaft zu einer Tabelle hinzufügen und durch den MAPI-Zeichenfolgennamespace auf die Eigenschaft verweisen, müssen Sie den Typ der Eigenschaft explizit an das Ende des Eigenschaftenverweises anfügen. Um beispielsweise die benutzerdefinierte Eigenschaft MyCustomProperty
hinzuzufügen, die den Unicode-Zeichenfolgentyp aufweist, müssen Sie den Typ 001f explizit an den Verweis anfügen, was zu folgendem Ergebnis führt: http://schemas.microsoft.com/mapi/string/{HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}/MyCustomProperty/0x0000001f
, wobei {HHHHHHHH-HHHH-HHHH-HHHH-HHHHHHHHHHHH}
die Namespace-GUID darstellt.
Bestimmte Eigenschaften für eine Tabelle mit Columns.Add, einschließlich binäre Eigenschaften, berechnete Eigenschaften und HTML- oder RTF-Textinhalte können nicht hinzugefügt werden. Weitere Informationen finden Sie unter Nicht unterstützte Eigenschaften in einem Table-Objekt oder Table-Filter.
Während der Items.SetColumns vereinfachen Zwischenspeichern bestimmter Eigenschaften für den sehr schnellen Zugriff auf die Eigenschaften einer Items -Auflistung verwendet werden kann, sind einige Eigenschaften von SetColumns ausgeschlossen. Da diese Einschränkungen nicht für Columns.Add gelten, ist das Table-Objekt eine weniger restriktive Alternative als Items.
Beispiel
Das folgende Codebeispiel veranschaulicht, wie ein Table -Objekt basierend auf der LastModificationTime von Elementen im Posteingang zu erhalten. Es wird gezeigt, wie die Standardspalten der Tabelle zu entfernen, bestimmte Spalten hinzugefügt und die Werte der entsprechenden Eigenschaften dieser Elemente drucken.
Sub AddColumns()
'Declarations
Dim Filter As String
Dim oRow As Outlook.Row
Dim oTable As Outlook.Table
Dim oFolder As Outlook.Folder
'Get a Folder object for the Inbox
Set oFolder = Application.Session.GetDefaultFolder(olFolderInbox)
'Define Filter to obtain items last modified after May 1, 2005
Filter = "[LastModificationTime] > '5/1/2005'"
'Restrict with Filter
Set oTable = oFolder.GetTable(Filter)
'Remove all columns in the default column set
oTable.Columns.RemoveAll
'Specify desired properties
With oTable.Columns
.Add ("Subject")
.Add ("LastModificationTime")
'PR_ATTR_HIDDEN referenced by the MAPI proptag namespace
.Add ("http://schemas.microsoft.com/mapi/proptag/0x10F4000B")
End With
'Enumerate the table using test for EndOfTable
Do Until (oTable.EndOfTable)
Set oRow = oTable.GetNextRow()
Debug.Print (oRow("Subject"))
Debug.Print (oRow("LastModificationTime"))
Debug.Print (oRow("http://schemas.microsoft.com/mapi/proptag/0x10F4000B"))
Loop
End Sub
Siehe auch
Support und Feedback
Haben Sie Fragen oder Feedback zu Office VBA oder zu dieser Dokumentation? Unter Office VBA-Support und Feedback finden Sie Hilfestellung zu den Möglichkeiten, wie Sie Support erhalten und Feedback abgeben können.