Laden...

Word TOC iterieren und zu einer bestimmten Seite springen

Erstellt von MS-Tech vor 5 Jahren Letzter Beitrag vor 5 Jahren 1.294 Views
Thema geschlossen
M
MS-Tech Themenstarter:in
6 Beiträge seit 2016
vor 5 Jahren
Word TOC iterieren und zu einer bestimmten Seite springen

Hallo Zusammen,

ich habe ein Word-Dokument mit einem Inhaltsverzeichnis. Ich möchte nun (irgendwie) durch das Inhaltsverzeichnis iterieren, von einem bestimmten Entry die Seitenzahl ermitteln und dann zu dieser Seite "springen". Geht das denn? Ich kann mir das Inhaltsverzeichnis holen, aber wie ich durch das Inhaltsverzeichnis iteriere und dann zu einer bestimmten Seite springe, weiß ich nicht.

Hat jemand ne Idee?

Grüße
MS-Tech

2.207 Beiträge seit 2011
vor 5 Jahren

Hallo MS-Tech,

hilf uns ein bisschen dir zu helfen: Ist es ein Doc oder Docx? Benutzt du die OpenXML SDK? Wie sieht der Code bisher aus?

Gruss

Coffeebean

M
MS-Tech Themenstarter:in
6 Beiträge seit 2016
vor 5 Jahren

Hi,

klar gern. Es handelt sich um Docx-Dokumente. Ich arbeite mit dieser COM-Schnittstelle, also Microsoft.Office.Interop.Word in der Version 15. Ich habe bisher noch nicht viel Code.


            foreach (Field f in wordDoc.Fields)
            {
                if (f.Type == WdFieldType.wdFieldTOC)
                {

                    TableOfContents toc = wordDoc.TablesOfContents[f.Index];
                    {
                        // Entry lesen
                    }
                }
            }

Das Objekt wordDoc ist eben ein Dokument, in dem sich das Inhaltsverzeichnis befindet. Das Inhaltsverzeichnis selber bekomme ich, aber wie kann ich dort einen Eintrag raussuchen (ggf. irgendein String-Vergleich), die Seitennummer ermitteln und dann zur Seite springen.

Viele Grüße
MS-Tech

2.207 Beiträge seit 2011
vor 5 Jahren

Wegen Crosspost ist hier zu.

Read the TOC of a Word Application and go to page

[Hinweis] Wie poste ich richtig? Punkt 2.2 Keine Crossposts

Gruss

Coffeebean

Thema geschlossen