python32.client 확장을 사용하여 Python과 Word 문서를 작성하고 있습니다. ToC를 생성하는 데 꽤 많은 수의 메소드를 시도했지만 모두 실패했습니다.Word & Python - 목차 생성
나는 내가하고 싶은 것은 MSDN 페이지에서이 예와 같이 뭔가 하나를에서는 ActiveDocument 개체를 호출하고 만들 생각 : 그것은 것 파이썬에서 제외
Set myRange = ActiveDocument.Range(Start:=0, End:=0)
ActiveDocument.TablesOfContents.Add Range:=myRange, _
UseFields:=False, UseHeadingStyles:=True, _
LowerHeadingLevel:=3, _
UpperHeadingLevel:=1
뭔가 같은 :
wordObject.ActiveDocument.TableOfContents.Add(Range=???,UseFiles=False, UseHeadingStyles=True, LowerHeadingLevel=3, UpperHeadingLevel=1)
'Selection'개체 (아래 예 참조)를 사용하여 모든 것을 작성했으며 첫 번째 페이지 나누기 후에이 ToC를 추가하려고합니다.
이objWord = win32com.client.Dispatch("Word.Application")
objDoc = objWord.Documents.Open('pathtotemplate.docx') #
objSel = objWord.Selection
#These seem to work but I don't know why...
objWord.ActiveDocument.Sections(1).Footers(1).PageNumbers.Add(1,True)
objWord.ActiveDocument.Sections(1).Footers(1).PageNumbers.NumberStyle = 57
objSel.Style = objWord.ActiveDocument.Styles("Heading 1")
objSel.TypeText("TITLE PAGE AND STUFF")
objSel.InsertParagraph()
objSel.TypeText("Some data or another"
objSel.TypeParagraph()
objWord.Selection.InsertBreak()
####INSERT TOC HERE####
이 어떤 도움을 크게 감상 할 수있다 :
여기에 문서 같은 모습의 샘플입니다! 완벽한 세계에서 나는 Word GUI에서 사용할 수있는 기본 첫 번째 옵션을 사용 하겠지만 파일을 가리키고 액세스하기가 더 어려워 보인다 (템플릿에 관한 것).
감사
헤더 구조에서 toc가 자동으로 생성되므로 템플릿에 토큰을 삽입하고 해당 템플릿에서 문서를 만드는 것이 어떻습니까? – barny
@barny 어떻게 두 번째 페이지를 고수 할 수 있습니까? 'WordObject.Selection.action()'구조체를 사용할 때, 필자는 문서를 작성할 때 문서를 작성한다. ToC를 템플릿에 넣으면 오른쪽 아래로 밀어 넣을 것입니까? 페이지 1의 상단에서 선택 시작을 지정할 수있는 방법이 있습니까? 그렇다면 ToC 다음으로 건너 뛰십시오. – Abraxas
3 페이지 (또는 어디서나)의 템플릿에 북마크/마커를 넣으십시오. 그런 다음 코드에서 마커를 검색하면 콘텐츠를 추가 할 수 있습니다. 그런 다음 템플릿, 머리글/바닥 글, 스타일, 그래픽 등에 원하는 다른 서식을 넣을 수 있습니다. 코드가 전혀 없습니다. 이렇게하면 누군가가 "표준 글꼴을 더 크게하고 싶습니다"라고 말하면 템플릿 편집만으로 코드 줄을 변경할 필요가 없습니다. 특수한 경우를 제외하고 대부분의 서식 지정에 스타일을 사용하고 특정 (직접 코드화 된) 서식을 지정하지 않습니다. 맞습니까? 그리고 고객이 매우 행복합니다. – barny