[ASP] Server-side woorden vervangen in een .doc

Pagina: 1
Acties:

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 24-03 09:02
Ik heb een aantal standaard formulieren in Word formaat die ik naar klanten moet sturen. Echter om deze elke keer handmatig te moeten invullen zie ik niet zo zitten.

Alle klantgegevens staan online in een MSSQL 2000 database en nu is mijn gedachte dat ik vanuit een knop op mijn admin pagina een word document kan genereren met de NAW gegevens van de geselecteerde klant.

Om achter de code te komen van de zoek&vervang functie in word heb ik eerst een macro opgenomen en daarna laten zoeken en vervangen, hierbij kreeg ik onderstaande code. Daarbij heb ik natuurlijk nog code toegevoegd die nodig is om het bestand te openen.
ASP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
docpath = "C:\Documents and Settings\maarten\Bureaublad\test.doc" 

Set wApp = CreateObject("word.Application") 
Set oDocument = CreateObject("word.Document") 

'On Error Resume Next 
Set oDocument = wApp.Documents.open(docpath) 

'If Err.number = 0 then 
wApp.Visible = True 
wApp.Documents(1).Activate 


Selection.Find.ClearFormatting
Selection.Find.Replacement.ClearFormatting
With Selection.Find
    .Text = "<<naam>>"
    .Replacement.Text = "Polderdijk"
    .Forward = True
    .Wrap = wdFindContinue
    .Format = False
    .MatchCase = False
    .MatchWholeWord = False
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
End With
Selection.Find.Execute Replace:=wdReplaceAll

Set wApp = Nothing 
Set oDocument = Nothing 


Echter krijg ik hier elke keer een foutmelding op regel 28 met de fout "Instructie wordt verwacht".

Kan iemand mij uitleggen hoe ik dit op moet lossen?

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • Jaspertje
  • Registratie: September 2001
  • Laatst online: 08-04 12:54

Jaspertje

Max & Milo.. lief

:= is geen standaard ASP. Haal de : is weg?

  • Polderdijk
  • Registratie: December 2001
  • Laatst online: 24-03 09:02
Jaspertje schreef op zaterdag 22 oktober 2005 @ 19:06:
:= is geen standaard ASP. Haal de : is weg?
Je hebt gelijk :) Maar ik test het nu even op mijn eigen PC met een .vbs.

Maar nu krijg ik de volgende foutmelding op regel 14:
Object vereist: 'Selection'.

Maar dat is opzich logisch, maar als ik ervan maakt oDocument.Selection dan werkt hij ook niet. Het lijkt erop of het via een Marco totaal anders is dan via VB.

Webhosting van SkyHost.nl: 25 Mb / 1 Gb windows hosting € 4,50 p/m excl.btw!


  • party42
  • Registratie: Oktober 2000
  • Laatst online: 20:42
wat is Selection? Ik mis de definitie van Selection?

code:
1
 Set Selection = ....


edit:
* party42 moet ff goed lezen. :D ik ga ff voor je verder kijken!

[ Voor 34% gewijzigd door party42 op 22-10-2005 19:22 ]

Everyday's an endless stream, of cigarettes and magazines...


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

Wat ik zelf vaak heb toegepast, is de Word bestanden als RTF bewaren op de server. Die kan je als standaard textbestand (filesystemobject) inlezen en daarin kan je eenvoudig de tekst-replaces uitvoeren. Dat werkt wat simpeler dan met het WordApplication object vind ik persoonlijk. Het gewijzigde RTF bestand is weer gewoon te openen in Word.

Disclaimer: een en ander kan natuurlijk alleen als je document in RTF is op te slaan zonder dat je verschillen krijgt met het oorspronkelijke document.

Today's subliminal thought is:


  • pistole
  • Registratie: Juli 2000
  • Laatst online: 21:52

pistole

Frutter

ik zou bookmarks definiëren in je Word document; deze kan je makkelijk via de API benaderen en wijzigen.

Heb dat zelf ook toegepast en werkt voortreffelijk.

Ik frut, dus ik epibreer


  • mulder
  • Registratie: Augustus 2001
  • Laatst online: 14:58

mulder

ik spuug op het trottoir

ASP zal Selection en constanten als wdReplaceAll niet direct herkennen. Je zult een referentie naar het Selection object moeten maken en constanten definieren. Dit is getype na 4 bier en 5 baco's dus er kunnen geen rechten aan worden verleend.

oogjes open, snaveltjes dicht

Pagina: 1