다음을 통해 공유


방법: 사용자 지정 문서 속성 만들기 및 수정

업데이트: 2007년 11월

적용 대상

이 항목의 정보는 지정된 Visual Studio Tools for Office 프로젝트 및 Microsoft Office 버전에만 적용됩니다.

프로젝트 형식

  • 문서 수준 프로젝트

Microsoft Office 버전

  • 2007 Microsoft Office system

  • Microsoft Office 2003

자세한 내용은 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.

Microsoft Office Excel 및 Microsoft Office Word에서는 통합 문서나 문서와 함께 저장되는 기본 속성을 제공합니다. 또한 문서 수준 사용자 지정에서 문서와 함께 추가 정보를 저장하려는 경우에는 사용자 지정 문서 속성을 만들고 수정할 수 있습니다.

사용자 지정 속성에 대한 작업을 수행하려면 CustomDocumentProperties 속성을 사용합니다. 이 속성은 DocumentProperty 개체의 컬렉션인 DocumentProperties 개체를 반환합니다. 이 컬렉션의 Item 속성을 사용하면 이름이나 컬렉션 내에서의 인덱스로 특정 속성을 검색할 수 있습니다.

다음 예제에서는 Excel에서 사용자 지정 속성을 추가하고 그 값을 할당하는 방법을 보여 줍니다.

예제

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;
}

강력한 프로그래밍

정의되지 않은 속성에 대해 Value 속성에 액세스하면 예외가 발생합니다.

참고 항목

작업

방법: 문서 속성에서 읽기 및 문서 속성에 쓰기

개념

문서 수준 사용자 지정 프로그래밍