Vraag : Cre�ër een nieuw document van secties van a templated document

Hallo tonen de Kerels,

Can iedereen me een voorbeeld van hoe ik een nieuw document van MS Word door (gebruikend VBA) het grijpen gespecificeerde secties van a kan dynamisch creëren templated programatically document dat in vooraf bepaalde secties verdeeld is. Laat het malplaatje zeggen heeft 10 bepaalde secties. Ik zou een nieuw die document willen kunnen creëren dat sectie 2 heeft, bij sectie 6 en sectie 8.
Is doenbaar dit? Als het gebruiken van secties dan ben ik open aan andere suggestions.

Thank u vooraf voor geen contributions

Antwoord : Cre�ër een nieuw document van secties van a templated document

Hier is een vroege bindende suggestie
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:
32:
33:
34:
35:
36:
Sub BuildDocFromSections ()
    Schemerige wdApp als Word.Application
    Schemerige docNew als Word.Document
    Schemerige docSource als Word.Document
    Schemerige sourcesections als Variant
    Schemerige I als Geheel
    Schemerige bNewInstance zoals Van Boole
        
    'probeer om een bestaand geval van Word te gebruiken
    Op Fout hervat 'onderdrukken fout daarna rapportering
        Plaats wdApp = GetObject (, „Word.Application“)
    Op Fout GoTo 0 're-laat fout rapportering toe
    
    Als wdApp dan niets is
        'Word die, leidt zo tot een nieuwe instantie lopen niet
        Reeks wdApp = CreateObject („Word.Application“)
        wdApp.Visible = Ware 'Facultatief. De code zal nog met verborgen toepassing werken
        bNewInstance = Waar
    Eind als
    
    
    sourcesections = Serie (2, 6, 8)
    Reeks docSource = wdApp.Documents.Open („C:\MyFolder\MyTemplate.dot“)
    Reeks docNew = wdApp.Documents.Add
    Voor I = 0 tot 2
        docSource.Sections (sourcesections (I)). Range.Copy
        docNew.Bookmarks („\ EndOfDoc“). Range.Paste
    Volgende I
    docSource.Close wdDoNotSaveChanges
    
    'Sparen nieuw document en dichte toepassing tenzij het reeds liep
    docNew.SaveAs „C:\MyFolder\MyNewDoc.dot“
    Als bNewInstance toen
        wdApp.Quit
    Eind als
Sub van het eind
Andere oplossingen  
 
programming4us programming4us