머리글 및 바닥 글의 단어 수 (Microsoft Word)
Kate는 문서의 머리글과 바닥 글에 대해서만 단어 수를 생성해야하는데 어떻게해야할지 모르겠습니다.
자동으로 수행하는 방법은 없지만 개수를 알아낼 매크로를 개발할 수 있습니다. VBA를 사용하면 문서의 각 섹션에있는 머리글을 쉽게 살펴볼 수 있으며 각 머리글에있는 단어 수를 확인할 수 있습니다. 한 가지 방법은 다음과 같은 매크로를 사용하는 것입니다.
Sub CntHeaderWords() Dim s As Section Dim h As HeaderFooter Dim sRaw As String Dim Cnt As Long Dim J As Integer Cnt = 0 For Each s In ActiveDocument.Sections For Each h In s.Headers For J = 1 To h.Range.Words.Count sRaw = h.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then Cnt = Cnt + 1 Next J Next h Next s MsgBox Cnt & " words in headers" End Sub
이 매크로를 실행하면 문서의 각 섹션과 해당 섹션의 각 헤더를 차례로 살펴 봅니다. 단어 수는 각 헤더에 대해 결정되며 Cnt 변수에 추가됩니다. 매크로가 완료되면 문서 헤더의 단어 수를 표시합니다.
이 매크로에 대해 주목해야 할 몇 가지 흥미로운 사항이 있습니다.
첫째, 각 헤더의 Words 컬렉션에 대한 Count 속성을 결정할 수 있으므로 이러한 모든 개수를 함께 추가하여 전체 단어 수를 결정할 수 있다고 생각할 수 있습니다. 문제는 섹션에 대한 헤더가없는 경우에도 Word에서 “묵시적”헤더에 대해 단어 수 1을 반환한다는 것입니다. 이것이 매크로가 실제로 헤더의 각 단어를 검사하는 이유이며 캐리지 리턴이나 줄 바꿈에 불과하면 개수에 포함되지 않습니다.
주의해야 할 또 다른 항목은 헤더에 구두점이 있으면 각 구두점은 단어로 계산된다는 것입니다. 예를 들어 “All rights reserved”라는 머리글이있는 경우 Word는이를 세 단어로 간주합니다. 헤더가 “All rights reserved”인 경우. (마침표 뒤에 마침표가 있음) Word는이를 네 단어로 간주합니다. 결론은 헤더에 구두점이있을 수 있다고 생각되면 구두점을 계산하지 않도록 매크로 코드를 조정할 수 있다는 것입니다.
이 매크로는 문서의 헤더에 대한 단어 수만 반환합니다. 대신 머리글과 바닥 글에 대한 단어 수를 원하는 경우 다음과 같이 매크로를 조정할 수 있습니다.
Sub CntHFWords() Dim s As Section Dim h As HeaderFooter Dim f As HeaderFooter Dim sRaw As String Dim HdCnt As Long Dim FtCnt As Long Dim J As Integer HdCnt = 0 FtCnt = 0 For Each s In ActiveDocument.Sections For Each h In s.Headers For J = 1 To h.Range.Words.Count sRaw = h.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then HdCnt = HdCnt + 1 Next J Next h For Each f In s.Footers For J = 1 To f.Range.Words.Count sRaw = f.Range.Words(J) sRaw = Trim(sRaw) If sRaw = vbCrLf Then sRaw = "" If sRaw = vbCr Then sRaw = "" If sRaw = vbLf Then sRaw = "" If Len(sRaw) > 0 Then FtCnt = FtCnt + 1 Next J Next f Next s sRaw = "Header words: " & HdCnt & vbCrLf sRaw = sRaw & "Footer words: " & FtCnt & vbCrLf sRaw = sRaw & "Total words: " & HdCnt + FtCnt MsgBox sRaw End Sub
이 버전의 매크로는 각 머리글에 적용되는 것과 똑같은 계산 기술을 각 바닥 글에 적용하여 매크로 끝에 개별 및 총 개수를 표시합니다.
_ 참고 : _
이 페이지 (또는 WordTips 사이트의 다른 페이지)에 설명 된 매크로를 사용하는 방법을 알고 싶다면 유용한 정보가 포함 된 특별 페이지를 준비했습니다.
link : / wordribbon-WordTipsMacros [새 브라우저 탭에서 특별 페이지를 열려면 여기를 클릭하세요]
.
_WordTips_는 비용 효율적인 Microsoft Word 교육을위한 소스입니다.
(Microsoft Word는 세계에서 가장 인기있는 워드 프로세싱 소프트웨어입니다.)이 팁 (10285)은 Microsoft Word 2007, 2010 및 2013에 적용됩니다.