Diese Seite beschreibt meine Erfahrung in der Verwaltung so genannte "Seitenränder".
Überblick
Es gibt keine Eigenschaft eines Dokuments, das Sie steuern die Sichtbarkeit der Seite (das heißt, Abschnitt) Grenzen können. Wir steuern Abschnitt Grenzen auf der Ebene der Sektion.Jeder Abschnitt kann 4 Grenzen: oben, rechts, unten, links. Es gibt keine horizontale, vertikale oder diagonale Grenzen für einen Abschnitt. Der Versuch, horizontal, vertikal oder diagonal Grenzen für einen Abschnitt zuzugreifen wirft Fehler 5941 "Das angeforderte Element der Auflistung ist nicht vorhanden."
Es gibt einen Satz von Grenzen für jeden Abschnitt. Es ist nicht möglich zu haben, sagen, pink Grenzen auf Seite 1 und grünen Grenzen auf Seite 2 eines Abschnitts. Jedoch, dass ein Satz von Grenzen kann auf der ersten Seite nur aus einem Abschnitt oder auf zweiten und nachfolgenden Seiten, oder beiden anzuzeigen.
Auf Dokumentebene: Aktivieren Grenzen mit Sektionen (n) Borders.Enable.
Die Section-Objekt verfügt über eine
Deshalb, wenn wir irgendwelche Abschnitt Grenzen wollen, müssen diese Eigenschaft .Borders.Enable Eigentum. Sie können diese Eigenschaft auf True oder False . Leider aber ist es nicht darauf beschränken, ein Abschnitt.
Egal, welche Ihrer Dokuments Sections Sie diese um, Word gelten ändert
den Wert der Eigenschaft für alle Abschnitte im Dokument. True . Nachdem Sie festgelegt haben es True , nicht ändern oder Sie müssen eingestellt erneut alle Details der einzelnen Grenzen in einzelnen Abschnitt. Während wir nicht können die
.Enable Eigenschaft für einen einzelnen Abschnitt, können wir es für jeden einzelnen Abschnitt zu lesen. Die möglichen Rückgabewerte für Sections( n ).Enable zu sein scheinen: - Wenn alle vier Ränder im Querschnitt haben
.LineStyle = wdLineStyleNone, dann Word gibt 0 (das heißt,False) - Wenn alle vier Ränder im Abschnitt. LineStyle anderen haben als
wdLineStyleNone, dann Word kehrt -1 (das heißt,True) - Else kehrt Wort
wdUndefined(9999999).
wdUndefined als mögliche gültigen Wert hier. Wo wird die Grenze erscheinen: Sektionen (n) Borders.EnableFirstPage und EnableOtherPages..
Drehen grenzt
Wir können steuern, welche Grenzen innerhalb eines Abschnitts durch Verwendung angezeigt.EnableFirstPage und / oder .EnableOtherPages . Aber wir sind nicht völlig unter Kontrolle. Wenn Sie zum Beispiel,
ActiveDocument.Sections (1). Borders.Enable = True
dann Word wird dafür sorgen, dass entweder .EnableFirstPage oder .EnableOtherPages ist True . Zum Beispiel: -
.EnableFirstPagewurde zuvor aufFalse. - Ihr Code setzt
.EnableOtherPages = False. - Word gesetzt
.EnableFirstPagezumTrue.
ActiveDocument.Sections(1).Borders.Enable True ist, dann Word wird nicht zulassen, sowohl .EnableFirstPage und .EnableOtherPages falsch zu sein. Es ist jedoch, OK, haben sie beide wahr. Drehen Grenzen off
.EnableFirstPage und .EnableOtherPages sind nützlich für die Ansicht Grenzen, aber nicht sinnvoll, für nicht angezeigt Grenzen. Deshalb, wenn wir nicht wollen, Grenzen, müssen wir wiederum jeweils off auf der Ebene des Individuums Grenze.
Und wir können, dass in einem von zwei Wegen tun: indem Sie die
.Visible Eigentum der Grenze, oder Einstellung der Grenze der .LineStyle zur wdLineStyleNone . Zum Beispiel, in VBA, können Sie deaktivieren den oberen Rand des Abschnitts 2 mit:
ActiveDocument.Sections(2).Borders(wdBorderTop).Visible = False , oder ActiveDocument. Sections(2).Borders(wdBorderTop).LineStyle = wdLineStyleNone Es spielt keine Rolle welche dieser unser Code tut. Word tun, das andere. Das heißt, wenn wir eingestellt
.Visible auf False, dann wird Word ändern .LineStyle unübertroffen. Und umgekehrt. Zusammenfassung von dem, was Grenzen Sie sehen
Diese Tabelle zeigt, welchen Abschnitt Grenzen Sie für verschiedene Einstellungen sieheSections( n ).Enable , .EnablePage1 , .EnableOtherPages und individuellen Grenzen " .LineStyle . | . Aktivieren | . EnablePage1 | . EnableOtherPages | . LineStyle | Siehe p1? | Siehe auf anderen Seiten? |
|---|---|---|---|---|---|
| Falsch | Wahr oder Falsch | Wahr oder Falsch | Jeder | Nicht | Nicht |
| Wahr | Wahr oder Falsch | Wahr oder Falsch | wdLineStyleNone | Nicht | Nicht |
| Wahr | Wahr | Falsch | Alles außer wdLineStyleNone | Ja | Nicht |
| Wahr | Falsch | Wahr | Alles außer wdLineStyleNone | Nicht | Ja |
| Wahr | Wahr | Wahr | Alles außer wdLineStyleNone | Ja | Ja |
Steuerung einzelner Grenzen
Sie können die Linienart, Linienbreite und Farbe für jede Grenze individuell einstellen, wie dies unter Border Grundlagen für Entwickler .Es gibt jedoch einige Kuriositäten.
Gemäß der Dokumentation, eine Grenze
.LineWidth kann entweder wdUndefined (9999999) oder einer der wdLineWidth Konstanten. Aber: - In Word 2003, einen Abschnitt der Standard Grenze
.LineWidthentspricht -2098703536. Diese Zahl ist nicht gültig, nach der Dokumentation. Ich weiß nicht, was es bedeutet. - In Word 2007, die Standardeinstellung
.LineWidthentspricht 7405540. Diese Zahl ist nicht gültig, nach der Dokumentation. Ich weiß nicht, was es bedeutet. - In Word 2010 ist der Standardwert 2 (das ist
wdLineWidth025pt).
In allen Versionen von Word, dass ich eingecheckt haben, ist die Standardeinstellung für den Abschnitt Grenzen,
.Enable = False . Also in gewisser Weise spielt es keine Rolle, was die Linienbreite ist, denn wenn .Enable = False , können wir sehen keine Grenzen. Schritt für Schritt Anleitung zur Verwaltung Abschnitt grenzt im Code
Wenn ich irgendwelche Abschnitt grenzt im Code verwalten möchten, ist dies, was ich finde was ich tun müssen:- Schalten Sie alle Grenzen in das Dokument, indem Sie
Section(1).Borders.Enable = True. Dies wird an den Grenzen für alle Bereiche ein. Es ist nicht beschränken sich auf Abschnitt (1). - Zyklus durch jeden Abschnitt, und:
- Stellen Sie eine oder beide
.EnableFirstPageoder.EnableOtherPagesauf True, aber zu keinem Zeitpunkt erlauben sowohl falsch zu sein. - Zyklus durch jedes der vier Ränder im Abschnitt und:
- Setzen jedes einzelnen Rahmenlinie
.LineStyleentwederwdLineStyleNoneoder der Linienstil Ich möchte (zBActiveDocument.Sections(2).Borders(wdBorderTop).LineStyle = wdLineStyleDot) - Wenn (und nur wenn!)
.LineStylenichtwdLineStyleNone, dann die.LineWidthund.Colorder Grenze. Beachten Sie, dass nicht jeder. LineWidth für jeden. LineStyle ist . - Set des Abschnitts
.Borders.DistanceFromImmobilie zu ermitteln, ob Abstände von der Grenze werden aus dem Text oder in der Kante des Papiers gemessen. - Set des Abschnitts
.Borders.DistanceFromTop,.DistanceFromLeftetc Eigenschaften. - Legen Sie die anderen Eigenschaften, die nur für Abschnitt Grenzen (sind
.AlwaysInFront,.JoinBorders,.SurroundFooterund.SurroundHeader). - Kümmern Sie sich nicht setzen die
.Shadow. Es funktioniert nicht, aber es hat nicht zu einem Fehler, entweder.
- Setzen jedes einzelnen Rahmenlinie
- Stellen Sie eine oder beide
Keine Kommentare:
Kommentar veröffentlichen