14. november 2003 - 16:34Der er
10 kommentarer og 1 løsning
Bookmarks og InsertFile
Hej.
Jeg har et problem i VBScipt.
Jeg genererer et dokument via asp, og indsætter data i nogle bookmarks. Jeg bruger følgende kode:
Set rngRange = objWordApp.ActiveDocument.Paragraphs(objWordApp.ActiveDocument.Paragraphs.Count).Range rngRange.MoveEnd() rngRange.Start = rngRange.End rngRange.InsertFile theTemplate
Dim rngRange if objWordApp.ActiveDocument.Bookmarks.Exists("navn") = true then Set rngRange = objWordApp.ActiveDocument.Bookmarks("navn").Range rngRange.InsertAfter arrWord(intPointer + 0) end if
Dette kører i en løkke, som skriver ud fra et array (arrWord).
Det hele kører fint, bortset fra at jeg bruger kommandoen InsertAfter, hvilket gør at jeg indsætter teksten efter mit bookmark. Jeg vil gerne indsætte teksten i mit bookmark, da jeg så kan referere til mit bookmark, andre steder i dokumentet.
Er der nogen som kan omskrive ovenstående til at indsætte teksten i mine bookmarks, istedet for efter. Da det kører i en løkke (flere sider fra samme skabelon, og med samme bookmarks-navne) er det vigtigt at der kun arbejdes med bookmarksene på den senest indsatte fil.
Dim objBookmark if objWordApp.ActiveDocument.Bookmarks.Exists("navn") = true then Set objBookmark = objWordApp.ActiveDocument.Bookmarks("navn") objBookmark.Text = arrWord(intPointer + 0) objBookmark.Bookmarks.Add "navn" endif
Dim rngRange if objWordApp.ActiveDocument.Bookmarks.Exists("navn") = true then Set rngRange = objWordApp.ActiveDocument.Bookmarks("navn").Range rngRange.Text = arrWord(intPointer + 0) rngRange.Bookmarks.Add "navn" end if
Bookmarket bliver sat ind i første fil, altså jeg genererer flere dokumenter i samme script, og mine data bliver godtnok sat i bookmarket, men kun i første fil. Linien i de efterfølgende filer er blank.
Problematikken er, at den skal finde bookmarket i det range den er i (rngRange), istedet for at finde bookmarket i hele det aktive dokument.
ps.: Jeg har kun testet dit sidste indlæg.
pss.: Koden jeg skrev foroven virker, men indsætter ikke teksten inde i bookmanrket
Bogmærker har den egenskab, at hvis du sætter et dokument ind i et andet dokument, så fjernes bogmærker med sammen navn fra det indsatte dokument. Det kan være det er der dit problem ligger begravet *S*
Løsningen er at arbejde dynamisk med bogmærkerne (altså lave en eller anden form for logik med et løbenummer). F.eks. kalde bogmærkerne Bogm_1, Bogm_2 osv.
Eller også må du slette bogmærkerne i det originale dokument før du indsætter en fil (men så forsvinder referancerne).
Det bliver et problem, idet jeg skal bruge bogmærkerne i nogle ref-felter, som oprettes manuelt.
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.