Vragen over macro's word

Pagina: 1
Acties:

Vraag


Acties:
  • 0 Henk 'm!

  • Cobiwan
  • Registratie: Januari 2006
  • Niet online
Ik probeer twee verschillende macro's in word uit te voeren en ben helaas n00b op dit gebied.

Als eerste wil ik graag eurotekens met een spatie erachter kunnen vervangen door eurotekens met een non-breaking space. Wat voor code moet ik daarvoor gebruiken? Ik heb gezien dat het Chr(160) is, maar ben nog niet verder gekomen dan het vervangen van het euroteken door Chr(160), zoals hieronder aangegeven. Hoe vervang zorg ik dat "€ " door zowel een € als een Chr(160) wordt vervangen?

code:
1
2
3
4
5
6
7
8
9
10
11
12
 Selection.Find.Execute Replace:=wdReplaceAll
    With Selection.Find
        .Text = "€ "
        .Replacement.Text = Chr(160)
        .Forward = True
        .Wrap = wdFindContinue
        .Format = False
        .MatchCase = False
        .MatchWholeWord = False
        .MatchWildcards = False
        .MatchSoundsLike = False
        .MatchAllWordForms = False



Ook probeer ik een macro te maken die een word bestand als pdf op dezelfde locatie als waar het word bestand zich bevindt kan opslaan. Ik had deze macro gevonden:

code:
1
2
3
4
5
6
7
8
9
10
11
12
Sub Silent_save_to_PDF()
'
' Silent Save_to_PDF Macro
'
    ActiveDocument.ExportAsFixedFormat OutputFileName:= _
        Replace(ActiveDocument.FullName, ".docx", ".pdf") , _
        ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
        wdExportOptimizeForPrint, Range:=wdExportAllDocument, Item:= _
        wdExportDocumentContent, IncludeDocProps:=False, KeepIRM:=True, _
        CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
        BitmapMissingFonts:=True, UseISO19005_1:=False
End Sub


Deze geeft als error: Fout 2147467259 (800405) tijdens uitvoering. Dit bestand wordt gebruikt door een andere toepassing of gebruiker. Is er iets dat ik over het hoofd zie?

Alle reacties


Acties:
  • 0 Henk 'm!

  • RobIII
  • Registratie: December 2001
  • Niet online

RobIII

Admin Devschuur®

^ Romeinse Ⅲ ja!

(overleden)
Waar hoort mijn topic?
Programming >> Client Software Algemeen
Sj44k13 schreef op donderdag 11 juli 2019 @ 14:18:
maar ben nog niet verder gekomen dan het vervangen van het euroteken door Chr(160)
code:
1
.Replacement.Text = Chr(160)
Wat dacht je van .Replacement.Text = "€" & Chr(160) :?

[ Voor 50% gewijzigd door RobIII op 11-07-2019 14:26 ]

There are only two hard problems in distributed systems: 2. Exactly-once delivery 1. Guaranteed order of messages 2. Exactly-once delivery.

Je eigen tweaker.me redirect

Over mij


Acties:
  • 0 Henk 'm!

  • Cobiwan
  • Registratie: Januari 2006
  • Niet online
Zucht. Inderdaad n00b. Dank!