Vraag : Hoe te om het document te verklaren werk ik in

Hallo experts

I een malplaatje die op nieuw een gebruikersvorm openstellen waar de gebruiker het type van document selecteert dat zij hebben willen om leiden tot. Van hun selectie neemt het de inhoud van een ander dossier in het document op. Zodra zij de optieknoop selecteren registreer ik hun selectie in customdocumentproperties. Zodra het klaar is met het opnemen van het document dat ik op customdocumentproperty heb geroepen een deel van nextform (genoemd GEOProcurementMenu) te vullen. Maar wanneer het naar customdocumentproperty gaat verwijzen krijg ik een run-time fout 76 de gevonden niet Weg van het Dossier. Maar ik kan bevestigen dat het eigenlijk in document.

The wordt geregistreerd het bizarre ding is dat het boete aan mijn computer.

Help werkt? Weet iedereen wat zou kunnen gebeuren?
" codeBody "
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:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
52:
53:
54:
55:
56:
57:
58:
59:
60:
61:
62:
63:
64:
65:
66:
67:
68:
69:
70:
71:
72:
73:
74:
Sub AutoNew
   ProcurementDocType.Show
   
'RUNTIME FOUT 76 ONLINE ONDERSTAAND
   Als ActiveDocument.CustomDocumentProperties.Item („xDocType“) = „voor Teder“ toen GEOProcurementMenu.txt DocNo = „RFT“ vragen
   Als ActiveDocument.CustomDocumentProperties.Item („xDocType“) = „voor Citaat“ toen GEOProcurementMenu.txt DocNo = „RFQ“ vragen
   Als ActiveDocument.CustomDocumentProperties.Item („xDocType“) = „voor Voorstel“ toen GEOProcurementMenu.txt DocNo = „RFP“ vragen
   
    GEOProcurementMenu.txt RevisionDate = Format$ (Datum, „dd/mm/yyyy“)
    
    GEOProcurementMenu.Show
    
Sub van het eind

Privé SubClickAction ()


    Als Me.OptTender = Vals en _
        Me.OptQuote = Vals en _
        Me.OptProposal = Vals toen
        MsgBox „te selecteren gelieve het Type van Document. “, „VEREISTE SELECTIE“
        Sub van de uitgang
    Eind als

   De 'gebieden van de lading

    Als Me.OptTender = Waar toen
        ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Offerte“
        ElseIf Me.OptQuote = Waar toen
        ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Citaat“
        ElseIf Me.OptProposal = Waar toen
        ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Voorstel“
        
    Eind als


Vraag InsertDoc

Maak me leeg

Beëindig Sub

Privé SubInsertDoc ()

Weg = ActiveDocument.AttachedTemplate.Path

Selection.GoTo wat: =wdGoToBookmark, Naam: = " StartHere "


n = Selection.Information (wdActiveEndSectionNumber)
            
Vraag UnprotectMyDoc

Als ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Offerte“ toen
        Selection.InsertFile Dossier Proc_Tender.docx van de Weg & het „van de \- Steun“
    
    ElseIf ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Citaat“ toen
            Selection.InsertFile Dossier Proc_Quote.docx van de Weg & het „van de \- Steun“
        
    ElseIf ActiveDocument.CustomDocumentProperties.Item („xDocType“). Waarde = „Verzoek om Voorstel“ toen
            Selection.InsertFile Dossier Proc_Proposal.docx van de Weg & het „van de \- Steun“
    
    Anders
    MsgBox „Onbekwaam om steundossier te vinden. Tevreden om uw beheerder“ te contacteren, „Fout“
    Eind als
 
Vraag ProtectMyDoc
 
 
ActiveDocument.Sections (n). (wdHeaderFooterPrimary) kopballen .LinkToPrevious = Waar
ActiveDocument.Sections (n). (wdHeaderFooterPrimary) Footers .LinkToPrevious = Waar
  
  
Sub van het eind

Antwoord : Hoe te om het document te verklaren werk ik in

Aangezien de rubriek van dit over het verklaren van een document vraagt, ga ik het idee uit werpen van het vervangen van ActiveDocument met een veranderlijke naam.

Ik zou voorstellen beginnend met uw code met:
Schemerig doc. als Document

Dan kunt u ervoor zorgen dat het correcte document met geïmpliceerdn is:
Vastgesteld doc. = ActiveDocument

Aangezien u vermeldde dat de gebruiker een document cre�ërt, zou u zelfs kunnen willen ervoor zorgen het heeft vastgemaakt aan het malplaatje door te gebruiken:
Vastgesteld doc. = Documents.Add (Malplaatje: = " Normaal ")

Met de malplaatjenaam die wat u nodig hebt is.  Het aardige ding over het gebruiken van een malplaatje voor een nieuw document is dat u zekere kunt zijn dat de referenties zullen bestaan.

Zonder de rest van uw malplaatje te zien, ben ik niet volledig zeker wat, maar u mist kon dingen aanhalen door een type van Document te verklaren. ActiveDocument kan van wonky vriendelijk worden als de gebruiker veelvoudige open dossiers heeft (hoewel het onwaarschijnlijk is als u de code binnen het actieve document roept).
Andere oplossingen  
 
programming4us programming4us