Tabellenüberschrift mit VBA festlegen

In Word habe ich ein Makro zur Formatierung einer Tabelle geschrieben. Das Makro funktionierte mit Office 95 ohne Probleme. Seit ich Word 2000 einsetze, erscheint bei einem Seitenumbruch die Kopfzeile der Tabelle nicht auf jeder Seite. Auch die Formatierung »Überschriftenzeile wiederholen« bleibt ohne Wirkung. Was ist da los?

Der Fehler steckt nicht in Word 2000 sondern im Makro. Die ursprüngliche Version wählt mit »Selection.Tables(1).Select« die gesamte Tabelle und definiert diese mit der Zeile »Selection.Rows.HeadingFormat = True« als Überschriftenzeile. Damit kommt Word 2000 nicht zurecht. Um den Fehler zu beheben, setzen Sie die Eigenschaft »HeadingFormat« bei nur einer Tabellenzeile auf »True«. Diese können Sie über einen Index in der Auslistung »Selection.Rows« ansprechen. Um nur die erste Zeile als Überschrift zu definieren, müssen Sie den VBA-Befehl »Selection.Rows(1). HeadingFormat = True« nutzen. Das korrigierte Makro sieht dann so aus:



Sub TabFormatLi5()
Selection.Tables(1).Select
Selection.Tables(1).AutoFormat_
Format:=wdTableFormatList5, _
ApplyBorders:=True, _
ApplyShading:=True, _
ApplyFont:=True, _
ApplyColor:=True, _
ApplyHeadingRows:=True, _
ApplyLastRow:=True, _
ApplyFirstColumn:=True, _
ApplyLastColumn:=False, _
AutoFit:=True
Selection.Tables(1).Select
Selection.Tables(1).Rows.LeftIndent = CentimetersToPoints(0)
Selection.Tables(1).PreferredWidth = 400
Selection.Rows.AllowBreakAcrossPages = False
Selection.Rows(1).HeadingFormat = True
Selection.MoveRight Unit:=wdCharacter, Count:=1
End Sub