Avatar billede alexander_j Nybegynder
25. marts 2007 - 13:19 Der er 17 kommentarer og
1 løsning

Problemer med OpenDataSource

Hej jeg har lavet en funktion, hvis job skulle være at åbne et worddokument og brevflette dette.
Brevfletningen fungerer upåklageligt første gang jeg trykker på knappen og kalder funktionen, men hvis jeg trykke igen, så åbnes min 'skabelon' (.doc, da jeg ikke kunne få det til at virke med .dot), men i access får jeg fejlen:
Run-time error '462': The remote server machine does not exist or is unavaible
Hvis jeg går ind i debug, så er koden der starter med 'ActiveDocument.MailMerge.OpenDataSource...' markeret.
Jeg har fundet lidt om fejlmeldingen hos microsoft, men har ikke kunnet forstå eller få løsningen til at fungere.
For mig lyder det til at en eller anden DataSource stadig er åben og derfor ikke er tilgængelig - skal denne lukkes eller hvad er løsningen?

Min funktions kode er som følger og bygger bl.a. på en makrooptagelse i word:
Public Function studentplan_mailmerge(mydoc As String) As Boolean
    Dim myword As Word.Application
    Set myword = New Word.Application
    myword.Documents.Open filename:=CurrentProject.Path & "\" & mydoc
    myword.Visible = True
    myword.Activate
    ActiveDocument.MailMerge.OpenDataSource name:=CurrentDb.name, _
        ConfirmConversions:=False, ReadOnly:=False, _
        LinkToSource:=True, _
        AddToRecentFiles:=False, _
        PasswordDocument:="", _
        PasswordTemplate:="", _
        WritePasswordDocument:="", _
        WritePasswordTemplate:="", _
        Revert:=False, _
        Format:=wdOpenFormatAuto, _
        Connection:="Provider=Microsoft.Jet.OLEDB.4.0;Password="""";User ID=Admin;Data Source=CurrentDb.Name;Mode=Read;Extended Properties="""";Jet OLEDB:System database="""";Jet OLEDB:Registry Path="""";Je", _
        SQLStatement:="SELECT * FROM `student_plan`", _
        SQLStatement1:="", _
        SubType:=wdMergeSubTypeAccess
    With ActiveDocument.MailMerge
        .Destination = wdSendToNewDocument
        .SuppressBlankLines = True
        With .DataSource
            .FirstRecord = wdDefaultFirstRecord
            .LastRecord = wdDefaultLastRecord
        End With
        .Execute Pause:=False
    End With
   
    Windows(mydoc).Activate
    ActiveWindow.Close
    Set myword = Nothing
   
    studentplan_mailmerge = True
End Function
Avatar billede mugs Novice
25. marts 2007 - 13:27 #1
Hvad er det egentlig du prøver på?

Vil du brevflette en del poster til Word?
I Så fald skulle du lave en traditionel brevfletning i Word, og så skulle det være nok at åbne dikumentet.

Hvis du vil sende formularens post til Word, har jeg et eksempel du kan få.
Avatar billede alexander_j Nybegynder
25. marts 2007 - 15:15 #2
Jeg vil brevflette med word.
Jeg vil at den automatisk skal lukke kildefilen(min wordskabelon).
Jeg vil at den automatisk skal vise den brevflettede wordfil med alle poster i forlængelse efter hinanden.

Bruger 2003 versionen af office.

Eksempel er meget velkomment på alexander(snabelting)bogstav.dk
Avatar billede mugs Novice
25. marts 2007 - 15:25 #3
Så nytter mit eksempel ikke. Det sender blot formularens felter over i Word.
Men spørgsmålet er, om ikke Word er den rigtige kategori.
Avatar billede alexander_j Nybegynder
25. marts 2007 - 16:31 #4
Tjoeh måske, men koden afvikles jo fra Access og på den måde vil jeg mene at det er Access der er problemet.
Jeg burde lægge spørgsmålet begge steder vil jeg tro.
Avatar billede mugs Novice
25. marts 2007 - 16:34 #5
Hvorfor laver du ikke en brevfletning i Word, og åbner dokumentet fra Access?
Avatar billede alexander_j Nybegynder
25. marts 2007 - 16:58 #6
Kan jeg med en komplet brevfletning i word bestemme at filen kun skal vise den brevflettede del og med posterne i forlængelse af hinanden?
For så er det fint med mig - jeg vil bare gerne at brugerne af min database blot skal trykke på én knap og så vupti åbnes et worddokument med samtlige poster i forlængelse af hinanden.
Avatar billede mugs Novice
25. marts 2007 - 17:07 #7
Når du brevfletter, har du jo en datakilde i dette tilfælde fra Access. Denne datakilde kan jo være en forespørgsel med eller uden kriterier og vil vise de poster, der matcher kriterierne hvis du har indsat nogle.

Du kan i word vælge forskellige måder at vise posterne på. Der er vist noget der hedder katalog og viser alle poster. Men prøv at eksperimentere lidt ad den vej. Jeg synes din kode er at skyde gråspurve med kanoner. Det burde ikke være nådvendigt med en sådan kode, når Word tilbyder en guide til brevfletning.
Avatar billede alexander_j Nybegynder
25. marts 2007 - 17:16 #8
Hmm, så skal mine brugere jo gennemgå guiden til brevfletning hver gang - det var det jeg ville undgå. Det var derofr jeg optog en makro, mens jeg brevflettede, som jeg så overførte koden fra til access for at det skulle ske automatisk.
Avatar billede mugs Novice
25. marts 2007 - 17:21 #9
Har du een gang lavet brevfletningen virker den hver gang du åbner Word dokumentet. Fletningen ligger jo "begravet" i Word filen og vil fungere hver gsng du åbner det hvad enten det er fra Access eller stifinderen eller hvad du nu måtte finde på.
Avatar billede alexander_j Nybegynder
25. marts 2007 - 17:26 #10
Ja den del har jeg gennemskuet, men kan jeg få den til automatisk at vise der hvor man går ud i de enkelte flettede breve? For jeg synes kun jeg kan få den til at vise grundsiden for brevfletningen og så skal man bagefter vælge 'flet til nyt dokument' <- denne del ville jeg gerne skete automatisk.
Avatar billede alexander_j Nybegynder
25. marts 2007 - 17:30 #11
Det er formodentlig blot denne her del af koden jeg gerne ville have skete automatisk når wordfilen blev åbnet:
With ActiveDocument.MailMerge
  .Destination = wdSendToNewDocument
Avatar billede mugs Novice
25. marts 2007 - 17:41 #12
Så er vi inde i hardcore Wordprogrammering som jeg intet kendskab har til - Beklager
Avatar billede alexander_j Nybegynder
25. marts 2007 - 19:41 #13
Det er helt iorden :-D Måske andre har - eventuelt i samarbejde med Access.
Avatar billede -anders- Juniormester
26. marts 2007 - 11:09 #14
Hej alexander, jeg er bestemt ikke ekspert her, på www.makeiteasy.dk/Download liger der et eks. du kan downloade. Eks demonstrere hvordan man kan brevflette med word, eks. hedder "Brevflet forespørgsel til word automatisk".

Jeg har dog ikke selv prøvet det, men måske det kan hjælpe dig videre, måske et kuk værd :o)
Avatar billede -anders- Juniormester
26. marts 2007 - 11:10 #15
kuk = kig :o)
Avatar billede alexander_j Nybegynder
26. marts 2007 - 14:30 #16
Den siger: The page cannot be found

er der fejl i linket eller siden taget af?
Avatar billede mugs Novice
26. marts 2007 - 16:45 #17
Prøv denne og oppe til højre under downloads:

http://www.makeiteasy.dk/Home.asp
Avatar billede alexander_j Nybegynder
25. juni 2007 - 21:36 #18
Hmmm det er der vist ingen rigtig løsning på desværre.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Dyk ned i databasernes verden på et af vores praksisnære Access-kurser

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester