VisualBasic VBA: Querverweis aktualisieren

zer0core

Ensign
Registriert
Sep. 2007
Beiträge
174
Hallo Leute,

ich verwende folgenden Code zum aktualisieren von Querverweisen, welcher auch einwandfrei funktioniert:

Code:
Sub AlleFelderAktualisieren()
  On Error Resume Next

  Dim aStory As Range
  Dim aField As Field
    
    For Each aStory In ActiveDocument.StoryRanges
      For Each aField In aStory.Fields
        'Wenn es sich um einen Querverweis handelt
        If aField.Type = wdFieldRef Or aField.Type = wdFieldRefDoc Then
          aField.Update
       End If
      Next aField
    Next aStory
End Sub

Mein Problem ist nur wenn das Dokument aus mehreren Abschnitten besteht aktualisiert er nur Abschnitt 1 mehr nicht.
Habe es auch schon mit einer Schleife versucht for each aSec in ActiveDocument.Section
Tut aber leider auch nicht.

Bitte um Hilfe.

Danke und LG
 
Ich gehe mal davon aus Du beziehst Dich auf Word und es soll ActiveDocument.Sections heißen.

Probier es mal mit einer for-Schleife bis Sections.Count und Sections(1) z.B.
 
Drexel schrieb:

Ja word.

was macht das für ein Unterschied ob ich mit Count durchzähle oder For Each ASec In ActiveDocument.Sections nehme.
mit Section kann ich halt nicht auf die Storyerange zugreifen.
 
Zuletzt bearbeitet von einem Moderator:
Eigentlich keinen, aber aber evtl. siehst Du schon am Counter, ob da was schief läuft oder nicht. Da der Sections Code in Deinem Beispiel nicht drin ist kann man nur raten.... Hast Du Dir im Debugger mal die Sections Collection angeschaut? Bzw den Schleifendurchlauf?
 
Habe es jetzt auf die Schnelle im Dokument ohne Abschnittswechsel gelöst.
Langfristig wäre es aber gut zu wissen wie man das ganze umsetzen kann.
 
Zurück
Oben