31. marts 2006 - 13:30Der er
20 kommentarer og 1 løsning
listboks til makro KørProgram (program + fil sti)
Jeg har en listboks med en tabel indeholdende navn og en filsti.
og så har jeg en makro der bliver kørt ved klik på en knap.
Den makro består af 2 handlinger OverførTekst: Eksporter brevfletning med Word til Windows forespørgselnavn Servicebrev-email filnavn c:\servicebreve\servicebreve.csv
Dim objword As New Word.Application Dim WordDoc As New Word.Document Set WordDoc = objword. Documents.Add("DREV:\MAPPE\FIL.doc") objword.Visible = True
Prøv denne referende til en combo i din formular, stadig en reference til Word:
On Error GoTo err_open
Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const dir As String = Me.DIN COMBO Const ext As String = ".doc" docname = dir & 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 End Sub
Den siger Compile error constant expression required og highlighter "Const dir As String"
Skal man ikke definere om den skal tage navn(felt1) eller sti(felt2) fra combo boksens tabel?
Private Sub Kommandoknap17_Click() On Error GoTo err_open
Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const dir As String = Me.Kombinationsboks15 Const ext As String = ".doc" docname = dir & 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 End Sub End Sub
Me!DIN COMBO og Me!Nr er 2 felter på din formular. Den er afprøvet og fungerer:
On Error GoTo err_open Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const ext As String = ".doc" docname = Me!Tekst40 & "\" & 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
Hvis brevet ALTID liger på C:\service og filnavnet er indeholdt i kombinationsboks15 skal den se sådan ud:
On Error GoTo err_open Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const ext As String = ".doc" docname = C:\service & "\" & Me.Kombinationsboks15 & 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
Hvis både stien og filnavnet er variabel og indeholdt i 2 felter på formularen burde min kode Kl 14:50 fungere. Hvis der er tale om forskellige kolonner i din kombo, skal du prøve fdata's forslat med at hente informationer ud af kombo'en.
Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const ext As String = ".doc" docname = Me.Kombinationsboks15.Column(1) 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 End Function
Grunden til jeg skal køre set som modul er at jeg bliver nød ti lat køre den fra en makro hvor den først OverførTekst: Eksporter brevfletning med Word til Windows forespørgselnavn Servicebrev-email filnavn c:\servicebreve\servicebreve.csv
mit modul ser sådan ud nu. hvor der er fejl i docname = Serviceind2.Kombinationsboks15.Column(1)
hvor Serviceind2= formular Kombinationsboks15= comboboks
modul code: Public Function openletter()
Dim docname As String Dim objword As Word.Application Dim objdoc As Word.Document Const ext As String = ".doc" docname = Serviceind2.Kombinationsboks15.Column(1) 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 End Function
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.