Jeg skal i et dokument have den til at sætte stifødder ind (fx k:/programmer/projekt-beskrivelse.doc). Jeg har været nød til at lave en kode der indsætter det som en hiddentekstbox. MEN den viser også disse stifødder på de efterfølgende sider, og det skal den ikke, den skal blot sætte dem ind på side to! Vil du se koden indtil videre?
If ActiveWindow.View.SplitSpecial <> wdPaneNone Then ActiveWindow.Panes(2).Close End If If ActiveWindow.ActivePane.View.Type = wdNormalView Or ActiveWindow. _ ActivePane.View.Type = wdOutlineView Or ActiveWindow.ActivePane.View.Type _ = wdMasterView Then ActiveWindow.ActivePane.View.Type = wdPageView End If ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader If Selection.HeaderFooter.IsHeader = True Then ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageFooter Else ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader End If Selection.HeaderFooter.Shapes.AddTextbox(msoTextOrientationHorizontal, _ 340.2, 793.8, 170.1, 28.35).Select Selection.ShapeRange.TextFrame.TextRange.Select Selection.ShapeRange.Line.Visible = msoFalse Selection.Collapse With ActiveDocument.Bookmarks .Add Range:=Selection.Range, Name:=\"fod\" .DefaultSorting = wdSortByName .ShowHidden = False End With Selection.TypeParagraph Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _ \"FILENAME \\p\\* småbogstav\", PreserveFormatting:=True Selection.MoveLeft unit:=wdCharacter, Count:=2, Extend:=wdExtend With Selection.Font .Name = \"Verdana\" .Size = 6 End With ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument End Sub
Nå, det er vel på tide at sige at jeg ikke kender noget til VB. (hehe) Nej, problemmet er at koden sikkert har kørt dig flad, det skridt du bør prøv nu, er at lave et pseudo-diagram over din kode.
Ved det du har lavet går det sikkert galt i din If sætning, tager højde for lidt for mange ting, og derfor vil den så snart den er forbi side to fortsætte med at sige den er sand.
Hmmmmm jeg forstår godt hvad du mener, og dog alligevel ikke! Jeg kan ikke forestille mig, hvad det er for en kode, der så skal bruges! Men måske du ved det?
Eftersom jeg ikke kan sætte mig hundrede ind i din kode, prøver jeg at lave et pseudodiagram.
Meget overfladisk.
I den første if-sætning tager du højde for at noget er ændret.
Og kan omskrives til: If ActiveWindow.View.SplitSpecial <> wdPaneNone Then ActiveWindow.Panes(2).Close
Den efterfølgende if-sætning tager du højde for tre forskellige indstillinger. Er en af disse indstillinger bliver rutinen kørt. (kan ligeledes omskrives som det forige eks.
Her efter kommer der en kommando som altid vil blive udført. (ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader)
Her efter kører du en enten eller rutine, om det er tale om header eller footer.
Herefter kommer det sjove kode, det er det går galt, de næste linjer vil den altid udføre.Du burde måske sætte et kriterie op.
Jeg har lige nu ikke computeren med mit VB på, så derfor kan jeg ikke prøve andet end at køre din rutine i hovedet. (kan kikke på den sennere håber jeg)
Jeg vil sige at rutinen kører godt ved side 1, men ved side 2 hjar den en anden værdi (den værdi som dit program kræver for at sætte stien ind) denne værdi nulstiller du ikke, derfor vil den syntes at hvergang at kriteriet er sandt.
JA, det skal desværre laves i kode, da jeg i forvejen har specielle sidehoved/-fødder (netop på side 2 og videre i dokumentet)!! :-( Så det er en større opgave, som du/I nok kan se.
Og Powell når du nu kommer over på din egen maskine, må du gerne lige kigge på det igen (hvis du har tiden til det selvfølgelig).
For at kunne have en speciel sidefod på side to tror jeg, at du er nødt til at dele dit dokument op i fortløbende sektioner. Kun på den måde kan du isolere sidefoden på side to. Håber at det kan hjælpe dig.
God fornøjelse.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.