Gewusst wie: Erstellen und Ändern von benutzerdefinierten Dokumenteigenschaften
Die oben aufgeführten Microsoft Office-Anwendungen stellen integrierte Eigenschaften bereit, die mit Dokumenten gespeichert werden.Darüber hinaus können Sie benutzerdefinierte Dokumenteigenschaften erstellen und ändern, um zusätzliche Informationen mit einem Dokument zu speichern.
Betrifft: Die Informationen in diesem Thema betreffen Projekte auf Dokument - und Anwendungsebene für die folgenden Anwendungen: Excel 2013 und Excel 2010, PowerPoint 2013 und PowerPoint 2010, Project 2013 und Project 2010, Word 2013 und Word 2010. Weitere Informationen finden Sie unter Verfügbare Funktionen nach Office-Anwendung und Projekttyp.
Verwenden Sie die CustomDocumentProperties-Eigenschaft eines Dokuments, um mit benutzerdefinierten Eigenschaften zu arbeiten.Verwenden Sie in einem Projekt auf Dokumentebene für Microsoft Office Excel beispielsweise die CustomDocumentProperties-Eigenschaft der ThisWorkbook-Klasse.In einem Projekt auf Anwendungsebene für Excel verwenden Sie die CustomDocumentProperties-Eigenschaft eines Microsoft.Office.Interop.Excel.Workbook-Objekts.Diese Eigenschaften geben ein DocumentProperties-Objekt zurück, das eine Auflistung der DocumentProperty-Objekte darstellt.Sie können die Item-Eigenschaft der Auflistung verwenden, um eine bestimmte Eigenschaft innerhalb der Auflistung anhand des Namens oder des Index abzurufen.
Im folgenden Beispiel wird veranschaulicht, wie in einer Anpassung auf Dokumentebene für Excel eine benutzerdefinierte Eigenschaft hinzugefügt und ein Wert zugewiesen wird.
Eine entsprechende Videodemo finden Sie unter How Do I: Access and Manipulate Custom Document Properties in Microsoft Word?.
Beispiel
Sub TestProperties()
Dim properties As Microsoft.Office.Core.DocumentProperties
properties = CType(Me.CustomDocumentProperties, Office.DocumentProperties)
If ReadDocumentProperty("Project Name") <> Nothing Then
properties("Project Name").Delete()
End If
properties.Add("Project Name", False, _
Microsoft.Office.Core.MsoDocProperties.msoPropertyTypeString, _
"White Papers")
End Sub
Private Function ReadDocumentProperty(ByVal propertyName As String) As String
Dim properties As Office.DocumentProperties
properties = CType(Me.CustomDocumentProperties, Office.DocumentProperties)
Dim prop As Office.DocumentProperty
For Each prop In properties
If prop.Name = propertyName Then
Return prop.Value.ToString()
End If
Next
Return Nothing
End Function
void TestProperties()
{
Microsoft.Office.Core.DocumentProperties properties;
properties = (Office.DocumentProperties)this.CustomDocumentProperties;
if (ReadDocumentProperty("Project Name") != null)
{
properties["Project Name"].Delete();
}
properties.Add("Project Name", false,
Microsoft.Office.Core.MsoDocProperties.msoPropertyTypeString,
"White Papers");
}
private string ReadDocumentProperty(string propertyName)
{
Office.DocumentProperties properties;
properties = (Office.DocumentProperties)this.CustomDocumentProperties;
foreach (Office.DocumentProperty prop in properties)
{
if (prop.Name == propertyName)
{
return prop.Value.ToString();
}
}
return null;
}
Robuste Programmierung
Beim Versuch, auf die Value-Eigenschaft für nicht definierte Eigenschaften zuzugreifen, wird eine Ausnahme ausgelöst.
Siehe auch
Aufgaben
Gewusst wie: Lesen von und Schreiben in Dokumenteigenschaften