26. januar 2007 - 08:27
Der er
1 kommentar
Indsætte Worddokument i range object
Hejsa
Jeg har noget VBA kode, hvor jeg indsætter et Word dokument i et andet Worddokument, f.eks. selection.insertfile FileName:="test.doc"
Men jeg har brug for at lave lidt redigering i det indsatte dokument, enten før eller efter der er indsat.
Så er det muligt at indsætte et Worddokument i et rangeobjet, så jeg kan redigere i teksten og derefter indsætte den i hoveddokumentet.
Eller alternativt, indsætte dokumentet men samtidig få et rangeobject der indeholder den indsatte tekst?
Kan godt indlæse dokumentet for sig selv, redigere teksten, indsætte den i hoveddokumentet og lukke dokumentet igen. Men det tager for lang tid, da det er mange dokumenter der bliver indlæst.
På forhånd tak
Med venlig hilsen
Jan Amdi
18. marts 2007 - 01:07
#1
Indsæt et bogmærke rundt om min. 1 karakter (f.eks. et mellemrum), der hvor dokumentet skal sættes ind. Brug derefter bogmærkets range til at indsætte dit dokumentet i. Sæt dit rangeobjekt til bogmærkets range efter indsættelse - og vupti nu har du fat i den indsatte tekst (men vær opmærksom på bogmærkets eksisterende karakter(er), som ikke er slettet, da bogmærke-ranget er collapset inden du indsætter dit dokument - hvis det har betydning for dig).
*************
Dim objInsertRange As Range
Set objInsertRange = ActiveDocument.Bookmarks("TestRange").Range
objInsertRange.Collapse wdCollapseStart
objInsertRange.InsertFile "C:\xxx.doc"
Set objInsertRange = ActiveDocument.Bookmarks("TestRange").Range
**************