표를 사용하여 Word에서 필드 업데이트

표를 사용하여 Word에서 필드 업데이트

MS Word 보고서에 다음 기능을 구현하고 싶습니다. 이것이 어떻게/가능한지 잘 모르겠습니다.

참고로 제가 생각한 이미지는 다음과 같습니다.

내가 원하는 것의 예

  1. 보고서 시작 부분에 모든 매개변수가 포함된 입력 테이블을 포함합니다.
  2. 보고서 내용 전체에서 테이블의 입력이 변경될 때 변경되는 필드를 설정합니다.
  3. 예: PARAMETER 1이 100으로 설정되면 Content 섹션의 모든 PARAMETER 1이 자동으로 100으로 변경됩니다.

감사합니다

답변1

VBA를 사용하여 이 요구 사항을 구현해야 한다고 생각합니다.

VBA 콘솔 열기: "Alt + F11"을 클릭합니다.

다음은 화면 녹화로 생성된 매크로입니다. 참조할 수 있습니다.

Sub Macro5()
Selection.TypeText Text:="100"
Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
        .Text = "parameter1"
        .Replacement.Text = "100"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.TypeText Text:="200"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "parameter2"
        .Replacement.Text = "200"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
    Selection.TypeText Text:="300"
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
        .Text = "parameter3"
        .Replacement.Text = "300"
        .Forward = True
        .Wrap = wdFindAsk
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchByte = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False
    End With
    Selection.Find.Execute Replace:=wdReplaceAll
End Sub

변수 값을 제어하려면 다음 두 매개변수만 수정하면 됩니다.

TypeText Text:="XX" 교체.텍스트 = "XX"

답변2

나는 당신이 원하는 것에 매우 가까운 방법을 찾았다고 생각합니다. 그러나 문서의 표 대신 문서의 고급 속성을 사용해야 합니다.

다음은 처음부터 시작하는 단계입니다(Windows의 최신 버전 Word의 경우).

  1. 새 문서 만들기
  2. 파일 ➡ 속성(오른쪽 상단) ➡ 고급 속성으로 이동:

여기에 이미지 설명을 입력하세요

  1. 그런 다음 나타나는 창에서 사용자 정의 탭으로 이동하십시오.
  2. 여기에서 GIF 쇼와 같이 매개변수 값을 저장하는 데 사용할 수 있는 사용자 정의 문서 속성을 생성할 수 있습니다(오타가 있어서 죄송합니다).

여기에 이미지 설명을 입력하세요

  1. 이제 문서로 돌아갑니다. 거기에서 사용할 수 있습니다필드 코드문서 속성을 표시합니다.

  2. 가장 쉬운 방법은 매개변수 텍스트를 표시할 위치로 이동하여 CTRL+ 를 누르고 F9입력한 DOCPROPERTY parameter_name \* MERGEFORMAT다음 를 눌러 F9문서의 모든 필드 코드(방금 만든 필드 코드 포함)를 업데이트하는 것입니다.

여기에 이미지 설명을 입력하세요

  1. 매개변수를 표시하려는 모든 위치에서 반복합니다.

문서 전체에서 매개변수 값을 변경하려면 고급 속성(2-3단계)에서 이를 업데이트하고 문서로 돌아가서 을 눌러 모든 필드 코드를 업데이트하세요 F9.

다음은 간단한 데모입니다.

여기에 이미지 설명을 입력하세요

관련 정보