방법: 문서의 속성을 사용하여 Word 표 채우기
다음 예제에서는 문서의 맨 위에 Microsoft Office Word 표를 만들고 호스트 문서의 속성을 사용하여 표를 채웁니다.
적용 대상: 이 항목의 정보는 Word 2007 및 Word 2010의 문서 수준 프로젝트 및 응용 프로그램 수준 프로젝트에 적용됩니다. 자세한 내용은 Office 응용 프로그램 및 프로젝트 형식에 따라 사용 가능한 기능을 참조하십시오.
문서 수준 사용자 지정의 표 채우기
표를 만들고 문서 속성을 사용하여 표를 채우려면
문서의 맨 위에 범위를 설정합니다.
Dim rng As Word.Range = Me.Range(Start:=0, End:=0)
object start = 0, end = 0; Word.Range rng = this.Range(ref start, ref end);
표의 제목을 삽입하고 단락 기호를 포함합니다.
With rng .InsertBefore("Document Statistics") .Font.Name = "Verdana" .Font.Size = 16 .InsertParagraphAfter() .InsertParagraphAfter() .SetRange(rng.End, rng.End) End With
rng.InsertBefore("Document Statistics"); rng.Font.Name = "Verdana"; rng.Font.Size = 16; rng.InsertParagraphAfter(); rng.InsertParagraphAfter(); rng.SetRange(rng.End, rng.End);
문서의 해당 범위에 표를 추가합니다.
rng.Tables.Add(Range:=Me.Paragraphs.Item(2).Range, NumRows:=3, NumColumns:=2)
rng.Tables.Add(this.Paragraphs[2].Range, 3, 2, ref missing, ref missing);
표에 서식을 지정하고 스타일을 적용합니다.
With Me.Tables.Item(1) .Range.Font.Size = 12 .Columns.DistributeWidth() .Style = "Table Professional" End With
Word.Table tbl = this.Tables[1]; tbl.Range.Font.Size = 12; tbl.Columns.DistributeWidth(); object styleName = "Table Professional"; tbl.set_Style(ref styleName);
문서 속성을 셀에 삽입합니다.
With Me.Tables.Item(1) .Cell(1, 1).Range.Text = "Document Property" .Cell(1, 2).Range.Text = "Value" .Cell(2, 1).Range.Text = "Subject" .Cell(2, 2).Range.Text = CType(Me.BuiltInDocumentProperties, Office.DocumentProperties) _ (Word.WdBuiltInProperty.wdPropertySubject).Value.ToString() .Cell(3, 1).Range.Text = "Author" .Cell(3, 2).Range.Text = CType(Me.BuiltInDocumentProperties, Office.DocumentProperties) _ (Word.WdBuiltInProperty.wdPropertyAuthor).Value.ToString() End With
tbl.Cell(1, 1).Range.Text = "Document Property"; tbl.Cell(1, 2).Range.Text = "Value"; tbl.Cell(2, 1).Range.Text = "Subject"; tbl.Cell(2, 2).Range.Text = ((Office.DocumentProperties)(this.BuiltInDocumentProperties)) [Word.WdBuiltInProperty.wdPropertySubject].Value.ToString(); tbl.Cell(3, 1).Range.Text = "Author"; tbl.Cell(3, 2).Range.Text = ((Office.DocumentProperties)(this.BuiltInDocumentProperties)) [Word.WdBuiltInProperty.wdPropertyAuthor].Value.ToString();
다음 예제에서는 전체 과정을 보여 줍니다. 이 코드를 사용하려면 프로젝트의 ThisDocument 클래스에서 이 코드를 실행하십시오.
Private Sub CreateDocumentPropertyTable()
Dim rng As Word.Range = Me.Range(Start:=0, End:=0)
' Insert a title for the table and paragraph marks.
With rng
.InsertBefore("Document Statistics")
.Font.Name = "Verdana"
.Font.Size = 16
.InsertParagraphAfter()
.InsertParagraphAfter()
.SetRange(rng.End, rng.End)
End With
' Add the table.
rng.Tables.Add(Range:=Me.Paragraphs.Item(2).Range, NumRows:=3, NumColumns:=2)
' Format the table and apply a style.
With Me.Tables.Item(1)
.Range.Font.Size = 12
.Columns.DistributeWidth()
.Style = "Table Professional"
End With
' Insert document properties into cells.
With Me.Tables.Item(1)
.Cell(1, 1).Range.Text = "Document Property"
.Cell(1, 2).Range.Text = "Value"
.Cell(2, 1).Range.Text = "Subject"
.Cell(2, 2).Range.Text = CType(Me.BuiltInDocumentProperties, Office.DocumentProperties) _
(Word.WdBuiltInProperty.wdPropertySubject).Value.ToString()
.Cell(3, 1).Range.Text = "Author"
.Cell(3, 2).Range.Text = CType(Me.BuiltInDocumentProperties, Office.DocumentProperties) _
(Word.WdBuiltInProperty.wdPropertyAuthor).Value.ToString()
End With
End Sub
private void CreateDocumentPropertyTable()
{
object start = 0, end = 0;
Word.Range rng = this.Range(ref start, ref end);
// Insert a title for the table and paragraph marks.
rng.InsertBefore("Document Statistics");
rng.Font.Name = "Verdana";
rng.Font.Size = 16;
rng.InsertParagraphAfter();
rng.InsertParagraphAfter();
rng.SetRange(rng.End, rng.End);
// Add the table.
rng.Tables.Add(this.Paragraphs[2].Range, 3, 2, ref missing, ref missing);
// Format the table and apply a style.
Word.Table tbl = this.Tables[1];
tbl.Range.Font.Size = 12;
tbl.Columns.DistributeWidth();
object styleName = "Table Professional";
tbl.set_Style(ref styleName);
// Insert document properties into cells.
tbl.Cell(1, 1).Range.Text = "Document Property";
tbl.Cell(1, 2).Range.Text = "Value";
tbl.Cell(2, 1).Range.Text = "Subject";
tbl.Cell(2, 2).Range.Text = ((Office.DocumentProperties)(this.BuiltInDocumentProperties))
[Word.WdBuiltInProperty.wdPropertySubject].Value.ToString();
tbl.Cell(3, 1).Range.Text = "Author";
tbl.Cell(3, 2).Range.Text = ((Office.DocumentProperties)(this.BuiltInDocumentProperties))
[Word.WdBuiltInProperty.wdPropertyAuthor].Value.ToString();
}
응용 프로그램 수준 추가 기능의 표 채우기
표를 만들고 문서 속성을 사용하여 표를 채우려면
문서의 맨 위에 범위를 설정합니다.
Dim rng As Word.Range = Me.Application.ActiveDocument.Range( _ Start:=0, End:=0)
object start = 0, end = 0; Word.Document document = this.Application.ActiveDocument; Word.Range rng = document.Range(ref start, ref end);
표의 제목을 삽입하고 단락 기호를 포함합니다.
With rng .InsertBefore("Document Statistics") .Font.Name = "Verdana" .Font.Size = 16 .InsertParagraphAfter() .InsertParagraphAfter() .SetRange(rng.End, rng.End) End With
rng.InsertBefore("Document Statistics"); rng.Font.Name = "Verdana"; rng.Font.Size = 16; rng.InsertParagraphAfter(); rng.InsertParagraphAfter(); rng.SetRange(rng.End, rng.End);
문서의 해당 범위에 표를 추가합니다.
rng.Tables.Add(Range:=Me.Application.ActiveDocument.Paragraphs.Item(2).Range, _ NumRows:=3, NumColumns:=2)
rng.Tables.Add(document.Paragraphs[2].Range, 3, 2, ref missing, ref missing);
표에 서식을 지정하고 스타일을 적용합니다.
With Me.Application.ActiveDocument.Tables.Item(1) .Range.Font.Size = 12 .Columns.DistributeWidth() .Style = "Table Professional" End With
Word.Table tbl = document.Tables[1]; tbl.Range.Font.Size = 12; tbl.Columns.DistributeWidth(); object styleName = "Table Professional"; tbl.set_Style(ref styleName);
문서 속성을 셀에 삽입합니다.
With Me.Application.ActiveDocument.Tables.Item(1) .Cell(1, 1).Range.Text = "Document Property" .Cell(1, 2).Range.Text = "Value" .Cell(2, 1).Range.Text = "Subject" .Cell(2, 2).Range.Text = CType( _ Me.Application.ActiveDocument.BuiltInDocumentProperties, _ Office.DocumentProperties) _ (Word.WdBuiltInProperty.wdPropertySubject).Value.ToString() .Cell(3, 1).Range.Text = "Author" .Cell(3, 2).Range.Text = CType( _ Me.Application.ActiveDocument.BuiltInDocumentProperties, _ Office.DocumentProperties) _ (Word.WdBuiltInProperty.wdPropertyAuthor).Value.ToString() End With
tbl.Cell(1, 1).Range.Text = "Document Property"; tbl.Cell(1, 2).Range.Text = "Value"; tbl.Cell(2, 1).Range.Text = "Subject"; tbl.Cell(2, 2).Range.Text = ((Office.DocumentProperties)(document.BuiltInDocumentProperties)) [Word.WdBuiltInProperty.wdPropertySubject].Value.ToString(); tbl.Cell(3, 1).Range.Text = "Author"; tbl.Cell(3, 2).Range.Text = ((Office.DocumentProperties)(document.BuiltInDocumentProperties)) [Word.WdBuiltInProperty.wdPropertyAuthor].Value.ToString();
다음 예제에서는 전체 과정을 보여 줍니다. 이 코드를 사용하려면 프로젝트의 ThisAddIn 클래스에서 이 코드를 실행하십시오.
Private Sub CreateDocumentPropertyTable()
Dim rng As Word.Range = Me.Application.ActiveDocument.Range( _
Start:=0, End:=0)
' Insert a title for the table and paragraph marks.
With rng
.InsertBefore("Document Statistics")
.Font.Name = "Verdana"
.Font.Size = 16
.InsertParagraphAfter()
.InsertParagraphAfter()
.SetRange(rng.End, rng.End)
End With
' Add the table.
rng.Tables.Add(Range:=Me.Application.ActiveDocument.Paragraphs.Item(2).Range, _
NumRows:=3, NumColumns:=2)
' Format the table and apply a style.
With Me.Application.ActiveDocument.Tables.Item(1)
.Range.Font.Size = 12
.Columns.DistributeWidth()
.Style = "Table Professional"
End With
' Insert document properties into cells.
With Me.Application.ActiveDocument.Tables.Item(1)
.Cell(1, 1).Range.Text = "Document Property"
.Cell(1, 2).Range.Text = "Value"
.Cell(2, 1).Range.Text = "Subject"
.Cell(2, 2).Range.Text = CType( _
Me.Application.ActiveDocument.BuiltInDocumentProperties, _
Office.DocumentProperties) _
(Word.WdBuiltInProperty.wdPropertySubject).Value.ToString()
.Cell(3, 1).Range.Text = "Author"
.Cell(3, 2).Range.Text = CType( _
Me.Application.ActiveDocument.BuiltInDocumentProperties, _
Office.DocumentProperties) _
(Word.WdBuiltInProperty.wdPropertyAuthor).Value.ToString()
End With
End Sub
private void CreateDocumentPropertyTable()
{
object start = 0, end = 0;
Word.Document document = this.Application.ActiveDocument;
Word.Range rng = document.Range(ref start, ref end);
// Insert a title for the table and paragraph marks.
rng.InsertBefore("Document Statistics");
rng.Font.Name = "Verdana";
rng.Font.Size = 16;
rng.InsertParagraphAfter();
rng.InsertParagraphAfter();
rng.SetRange(rng.End, rng.End);
// Add the table.
rng.Tables.Add(document.Paragraphs[2].Range, 3, 2, ref missing, ref missing);
// Format the table and apply a style.
Word.Table tbl = document.Tables[1];
tbl.Range.Font.Size = 12;
tbl.Columns.DistributeWidth();
object styleName = "Table Professional";
tbl.set_Style(ref styleName);
// Insert document properties into cells.
tbl.Cell(1, 1).Range.Text = "Document Property";
tbl.Cell(1, 2).Range.Text = "Value";
tbl.Cell(2, 1).Range.Text = "Subject";
tbl.Cell(2, 2).Range.Text = ((Office.DocumentProperties)(document.BuiltInDocumentProperties))
[Word.WdBuiltInProperty.wdPropertySubject].Value.ToString();
tbl.Cell(3, 1).Range.Text = "Author";
tbl.Cell(3, 2).Range.Text = ((Office.DocumentProperties)(document.BuiltInDocumentProperties))
[Word.WdBuiltInProperty.wdPropertyAuthor].Value.ToString();
}