Cómo: Crear y modificar propiedades personalizadas para documentos
Actualización: noviembre 2007
Se aplica a |
---|
La información de este tema sólo se aplica a los proyectos y versiones especificados de Visual Studio Tools para Office de Microsoft Office. Tipo de proyecto
Versión de Microsoft Office
Para obtener más información, vea Características disponibles por aplicación y tipo de proyecto. |
Microsoft Office Excel y Microsoft Office Word proporcionan propiedades integradas que se almacenan con los libros y los documentos. Además, se pueden crear y modificar propiedades de documento personalizadas si hay información adicional que desea almacenar con el documento en una personalización de nivel de documento.
Utilice la propiedad CustomDocumentProperties para trabajar con propiedades personalizadas. Esta propiedad devuelve un objeto DocumentProperties, que es una colección de objetos DocumentProperty. Puede utilizar la propiedad Item de la colección para recuperar una propiedad determinada de la colección, ya sea por el nombre o por el índice.
El ejemplo siguiente muestra cómo agregar una propiedad personalizada en Excel y asignarle un valor.
Ejemplo
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", missing);
}
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;
}
Programación eficaz
Si se intenta tener acceso a la propiedad Value para buscar propiedades no definidas, se inicia una excepción.
Vea también
Tareas
Cómo: Leer y escribir en propiedades de un documento