Office Forum
www.Office-Loesung.de
Access :: Excel :: Outlook :: PowerPoint :: Word :: Office :: Wieder Online ---> provisorisches Office Forum <-
Automatisiertes Auslesen von Überschriften
zurück: Textbox.Value in Word-Tabelle importieren weiter: Wordtabelle ausschneiden und in andere Worddatei einfügen Unbeantwortete Beiträge anzeigen
Neues Thema eröffnen   Neue Antwort erstellen     Status: Feedback Facebook-Likes Diese Seite Freunden empfehlen
Zu Browser-Favoriten hinzufügen
Autor Nachricht
OG L4ud1
Im Profil kannst Du frei den Rang ändern


Verfasst am:
02. Sep 2008, 13:41
Rufname:

Automatisiertes Auslesen von Überschriften - Automatisiertes Auslesen von Überschriften

Nach oben
       Version: Office 2003

Hallo zusammen,

ich habe aktuell folgendes Problem:
Ich habe ein Word-Dokument (Word 2003), welches einige Level1 und 2 Überschriften hat. Ich möchte lediglich die Level 1 Überschriften mithilfe eines Tools, welches in Visual Basic.net (2003) geschrieben ist auslesen und speichern.
Bisher habe ich dazu folgenden Code produziert:

Code:


word_rng = word_doc.Range

With word_rng.Find
                .Text = ""
                .Style = Word.WdBuiltinStyle.wdStyleHeading1
                .Forward = True
                .Execute()
                Do While .Found = True
                    word_rng.Select()
                    ' Kapitel markieren und merken
                    word_rngÜ = word_app.Selection.Bookmarks("\HeadingLevel").Range
                    strUeberschriftCollection.Add(word_rngÜ.Sentences.First.Text)
                    ' nächstes Kapitel suchen
                    .Execute()
                Loop
            End With


Das Ergebnis ist, dass er Überschrift 1 und 2 erfolgreich selektiert und speichert, die restlichen 5 Überschriften werden aber nicht mehr erreicht, da er nicht weiter als bis zur zweiten kommt. Er hat dann eine Art Endlosschleife, da diese nicht abbricht und er ununterbrochen den Titel der 2. Überschrift speichert. Kann mir jemand weiter helfen?
Lisa
Moderator; Word seit Word 5.0 (für DOS)


Verfasst am:
02. Sep 2008, 15:21
Rufname:
Wohnort: Leipzig


AW: Automatisiertes Auslesen von Überschriften - AW: Automatisiertes Auslesen von Überschriften

Nach oben
       Version: Office 2003

Hallo OGL4ud1,

Du kannst die Überschriften auch so auslesen (in VBA), lässt sich sicher in VB.Net nachbilden:
Code:
Sub Test()

    Dim myArr() As String
    Dim i As Integer
   
    myArr = ActiveDocument.GetCrossReferenceItems(wdRefTypeHeading)
   
    For i = 1 To UBound(myArr)
        Debug.Print myArr(i)
    Next i
   
End Sub

Gruß
Lisa
OG L4ud1
Im Profil kannst Du frei den Rang ändern


Verfasst am:
08. Sep 2008, 08:11
Rufname:

AW: Automatisiertes Auslesen von Überschriften - AW: Automatisiertes Auslesen von Überschriften

Nach oben
       Version: Office 2003

Hallo Lisa,

vielen Dank für deine schnelle Antwort. Ich habe deinen Code etwas für Visual Basic angepasst und er funktioniert einwandfrei. Smile Er liest zwar nicht nur die Überschriften vom Rang 1 aus sondern sämtliche, aber das kann man ja nun noch einfach selber filtern.
Ich habe dazu ganz simpel nach dem zweiten Zeichen in der Überschrift gesucht. Ist dieses ein Punkt, gehe ich davon aus, dass es sich um eine Unterüberschrift vom Rang >1 handelt. Damit habe ich für mein Dokument das Ziel erreicht Smile

Code:

Dim myArr As Object
Dim i As Integer

myArr = word_doc.GetCrossReferenceItemsWord.WdReferenceType.wdRefTypeHeading)

For i = 1 To UBound(myArr)
    strKeyword2 = Trim(myArr(i))
    If Mid(Trim(myArr(i)), 2, 1) <> "." Then
        strUeberschriftCollection.Add(myArr(i))
    End If
Next i


Gruß
Nahemo
Im Profil kannst Du frei den Rang ändern


Verfasst am:
21. Okt 2008, 15:54
Rufname:
Wohnort: Hagen


AW: Automatisiertes Auslesen von Überschriften - AW: Automatisiertes Auslesen von Überschriften

Nach oben
       Version: Office 2007

Code:
myArr = word_doc.GetCrossReferenceItemsWord.WdReferenceType.wdRefTypeHeading)


Funktioniert ja wunderbar, das Array wird erstellt und wird so aufgebaut das ich unterschiedliche Überschriften auch sofort erkenne:

1. Ebene "1. Dumdidum"
2. Ebene " 1.1 Dumdidum"
3. Ebene " 1.1.1 Dumdidum"
4. Ebene " 1.1.1.1 Dumdidum"
5. Ebene " 1.1.1.1.1 Dumdidum"


Das ist die Darstellungsweise der Strings in dem Array, Vorausgesetzt ich habe die Aufzählung bei den Überschriften aktiviert. Meine Frage da ich davon leider wirklich null Ahnung habe und ich jetzt schon 2 Tage dran sitze, wie bekomme ich dieses StringArray nun in eine TreeView gesetzt, ich habe leider viele Überschriften es geht bis in die 5. Ebene runter, ist aber nicht sicher ob es sich noch weiter verschachtelt, und ich würde gerne die Überschriften einfach auslesen und über die TreeView ansteuern, egal wo ich mich grade in meinem Dokument befinde, dazu benutze ich ne CustomTaskPane, die Überschriften sind wie gesagt weit verschachtelt und ich bekomme den Treeview nicht hin Sad Wäre dankbar für Hilfe. Danke im Voraus

Chris
Neues Thema eröffnen   Neue Antwort erstellen Alle Zeiten sind
GMT + 1 Stunde

Diese Seite Freunden empfehlen

Seite 1 von 1
Gehe zu:  
Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum herunterladen

Verwandte Themen
Forum / Themen   Antworten   Autor   Aufrufe   Letzter Beitrag 
Keine neuen Beiträge Word Serienbriefe: Seriendruckfelder nur bei bestimmten Datensätzen auslesen 0 skorpion.14 199 10. Okt 2012, 20:28
skorpion.14 Seriendruckfelder nur bei bestimmten Datensätzen auslesen
Keine neuen Beiträge Word Formate: Sondereinzug hängend funktioniert bei Überschriften nicht 1 martin2509 2141 15. Jul 2010, 08:52
mojos Sondereinzug hängend funktioniert bei Überschriften nicht
Keine neuen Beiträge Word Formate: 2 Überschriften auf einer Seite 1 Jessi85 1219 05. Apr 2010, 20:30
Jessi85 2 Überschriften auf einer Seite
Keine neuen Beiträge Word Formate: Seitenzahlen mit Nummerierungen aus Überschriften (Ebene 3) 1 clmuser 1528 09. Dez 2009, 18:33
s24195 Seitenzahlen mit Nummerierungen aus Überschriften (Ebene 3)
Keine neuen Beiträge Word Formate: Überschriften Gliederung - Alles auf Anfang setzen? 3 Guidoo 1511 08. Okt 2009, 16:16
Guidoo Überschriften Gliederung - Alles auf Anfang setzen?
Keine neuen Beiträge Word Formate: Gliederung in Word (Verbindung der Überschriften zueinander) 3 Lomyte 5683 22. Jul 2009, 17:08
HoMa Gliederung in Word (Verbindung der Überschriften zueinander)
Keine neuen Beiträge Word Formate: Exceldatei auslesen für Wordvorlage Conjoint 10 ExcelDAU 2094 10. Dez 2008, 04:10
charlybrown Exceldatei auslesen für Wordvorlage Conjoint
Keine neuen Beiträge Word Formate: Nummerierung Überschriften Word2007 3 MIke85 8780 11. Nov 2008, 14:39
MIke85 Nummerierung Überschriften Word2007
Keine neuen Beiträge Word Formate: Absatz vor Überschriften 1 mightybee 924 05. Okt 2008, 01:03
Wolfgang 1958 Absatz vor Überschriften
Keine neuen Beiträge Word Formate: In Kopfzeile Bezug zu Überschriften 2 Gast 1871 18. Jan 2008, 22:36
Gast In Kopfzeile Bezug zu Überschriften
Keine neuen Beiträge Word Formate: Überschriften in den Seitenrändern platzieren 0 fragend 509 08. Dez 2007, 13:44
fragend Überschriften in den Seitenrändern platzieren
Keine neuen Beiträge Word Formate: Überschriften in Kopfzeile 22 patgio 4136 24. Nov 2007, 13:07
patgio Überschriften in Kopfzeile
 

----> Diese Seite Freunden empfehlen <------ Impressum - Besuchen Sie auch: Web Editor Forum