Avatar billede olav76 Nybegynder
31. juli 2003 - 14:39 Der er 6 kommentarer og
1 løsning

Kan man åbne et word-dokument fra Access

Findes der en vba-kode, hvormed man kan åbne et bestemt word-dokument fra Access?

Dokumentet ligger i samme directory som databasen.
Avatar billede mugs Novice
31. juli 2003 - 14:50 #1
Ret stien til. I denne linie "docname = dir & Me.Nr & ext" refererer Me.Nr til et nøglefelt i en formular og er samtisig navnet på word-dokumentet


On Error GoTo err_open
Dim docname As String
Dim objword As Word.Application
Dim objdoc As Word.Document
Const dir As String = "D:\Opskrifter\"
Const ext As String = ".doc"
docname = dir & Me.Nr & ext
On Error Resume Next
Set objword = GetObject(, "Word.Application")
Err.Clear
On Error GoTo err_open
If objword Is Nothing Then
Set objword = GetObject("", "Word.Application")
End If
objword.Visible = True
AppActivate "Microsoft Word"
objword.Documents.Open docname
Exit Sub
err_open:
MsgBox "fejlkode: " & Err.Number
Avatar billede olav76 Nybegynder
31. juli 2003 - 14:57 #2
Jeg er ikke sikker på at jeg er helt med, men dokumentet hedder "brev vr.doc" og ligger i samme directory som basen - Hvordan skal koden så se ud?
Avatar billede mugs Novice
31. juli 2003 - 15:46 #3
On Error GoTo err_open
Dim docname As String
Dim objword As Word.Application
Dim objdoc As Word.Document
Const dir As String = "D:\VBA\XP\Opskrifter\"
Const ext As String = ".doc"
Const navn As String = "brev vr"
docname = dir & navn & ext
On Error Resume Next
Set objword = GetObject(, "Word.Application")
Err.Clear
On Error GoTo err_open
If objword Is Nothing Then
Set objword = GetObject("", "Word.Application")
End If
objword.Visible = True
AppActivate "Microsoft Word"
objword.Documents.Open docname
err_open:
MsgBox "fejlkode: " & Err.Number
Avatar billede mugs Novice
31. juli 2003 - 15:46 #4
Husk du skal have en reference til Word.
Avatar billede olav76 Nybegynder
01. august 2003 - 09:25 #5
Jeg har indsat følgende kode:

    On Error GoTo err_open
Dim docname As String
Dim objword As Word.Application
Dim objdoc As Word.Document
Const dir As String = "X:\xxxxx\xxxxxxx"
Const ext As String = ".rtf"
Const navn As String = "Brev vr"
docname = dir & navn & ext
On Error Resume Next
Set objword = GetObject(, "Word.Application")
Err.Clear
On Error GoTo err_open
If objword Is Nothing Then
Set objword = GetObject("", "Word.Application")
End If
objword.Visible = True
AppActivate "Microsoft Word"
objword.Documents.Open docname
err_open:
MsgBox "fejlkode: " & Err.Number

Men når jeg aktiverer knappen får jeg følgende fejlmeddelelse:

"Der opstod en kompileringsfejl: Den brugerdefinerede type er ikke defineret.

- og den 3. linje "Dim objword As Word.Application" er markeret.

Kan det løses?
Avatar billede mugs Novice
01. august 2003 - 15:52 #6
Se min kommentar 3177 kl 15:46:39. Jeg tror det er her, fejlen ligger:

Du har ikke oprettet en reference til Word.

Access kan ikke "se" word, med mindre du har oprettet denne reference. Åbn et kodemodul og i menuen Funktioner > Referencer (Tools > References), browser du ned igennem de forskellige referencer til du møder Microsoft Word 10,00 eller noget i den stil. Navnet kan variere lidt efter versionerne, men blot der står Microsoft Word. Sørg for, at der er et checkmærke o boksen i venstre side af vinduet.
Avatar billede mugs Novice
01. august 2003 - 16:39 #7
Jg ser nu, at du prøver at åbne et rtf dokument. Koden gælder for Word, som angivet i spørgsmålet:

Const ext As String = ".rtf"
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