Avatar billede rashid Praktikant
01. november 2002 - 14:41 Der er 4 kommentarer og
1 løsning

word til pdf via makro

Hejsa

Jeg har fået fat i en lille makrokode til dette foremål, men problemet er at den ikke virker som jge vil have det. Meningen er at man inde fra word kan konvertere alle wordfiler i et givent katalog (mappe) til PDF. I kan se på koden og fortælle mig om jeg kan lave det bedre ?? så, her kommer den:
Function ConvertFile(strSourceFileName As String) As String
On Error GoTo ErrorHandler

Dim msWord As Word.Application
Set msWord = GetObject(Class:="Word.Application.9")

msWord.Visible = True
msWord.ActivePrinter = "Acrobat Distiller"
msWord.Documents.Open strSourceFileName
msWord.ActiveDocument.PrintOut
msWord.ActiveDocument.Close False

' Should check and quit word when done
Set msWord = Nothing
ConvertFile = True
Exit Function

'////////////////////////////////////////////////////
ErrorHandler:
' Opret Word hvis ikke aktiv
If Err.Number = 429 Then
Set msWord = CreateObject("Word.Application.9")
Err.Clear ' slet fejlmeddelelse hvis den fremkommer
Resume
End If

' Andre fejlmeddelelser behandles her
If IsCriticalError Then
ConvertFile = False
Exit Function
Else
Resume
End If
End Function

'///////////////////////////////////////////////////
'///////////////////////////////////////////////////

Private Function IsCriticalError() As Boolean
Dim strErrorMessage As String
Select Case Err.Number ' Evaluate error number.
Case Else
strErrorMessage = "Please contact xess66@hotmail.com and inform them that" & Chr$(13) & _
"the error message reported by the operating system was " & Chr$(13) & _
Chr$(34) + Trim(Str(Err.Number)) & " " & Err.Description + Chr$(34)
MsgBox strErrorMessage, , "Conversion error" + Str(Err.Number)
IsCriticalError = True
Exit Function
End Select
IsCriticalError = False
End Function

Sub btnConvert_Click()
Dim strFileToConvert As String
Dim strFolder As String

' Sæt stien til wordfilerne
strFolder = InputBox("Indtast stien til wordfilerne", "STI TIL WORDFILER", "d:\adobe\")

' Få fat i den første wordfil
strFileToConvert = Dir(strFolder + "*.doc")

' tag de efterfølgende filer
While strFileToConvert <> ""

' Forsøg på at konvertere til PDF
If (ConvertFile(strFolder + strFileToConvert) = False) Then
' Hvis der går noget bedes brugeren om at stoppe
    If (MsgBox("Noget er gået galt i konverteringen " + strFileToConvert + Chr(13) + "Vil du afslutte ? ", vbYesNo) = vbYes) Then
' Vi afslutter
Exit Sub
End If
End If

' Næste fil behandles
strFileToConvert = Dir
Wend

End Sub
01. november 2002 - 15:05 #1
Hejsa - prøv at teste denne her:

Public Function ConvertFile(strSourceFileName As String) As Boolean
    On Error GoTo ErrorHandler
    Dim docActive As Document
   
    With Application
        Set docActive = .Documents.Open(strSourceFileName)
        .ActivePrinter = "Acrobat Distiller"
        .ActiveDocument.PrintOut
        .ActiveDocument.Close False
    End With
   
    ' Should check and quit word when done
    ConvertFile = True
    Exit Function
   
ErrorHandler:
    ConvertFile = False
End Function

Sub btnConvert_Click()
    Dim strFileToConvert As String
    Dim strFolder As String
   
    ' Sæt stien til wordfilerne
    strFolder = InputBox("Indtast stien til wordfilerne", "STI TIL WORDFILER", "d:\adobe\")
   
    ' Få fat i den første wordfil
    strFileToConvert = Dir(strFolder + "*.doc")
   
    ' tag de efterfølgende filer
    While strFileToConvert <> ""
   
        ' Forsøg på at konvertere til PDF
        If Not (ConvertFile(strFolder + strFileToConvert)) Then
            ' Hvis der går noget bedes brugeren om at stoppe
            If (MsgBox("Noget er gået galt i konverteringen " + strFileToConvert + Chr(13) + _
                "Vil du afslutte ? ", vbYesNo) = vbYes) Then
                ' Vi afslutter
                Exit Sub
            End If
        End If
       
        ' Næste fil behandles
        strFileToConvert = Dir
    Wend
End Sub
01. november 2002 - 15:10 #2
Den kræver at du har AdobePDFMaker installeret
Avatar billede rashid Praktikant
01. november 2002 - 15:20 #3
Det har jeg - jeg vil afprøve dette på mandag
Har du testet det selv ??
Avatar billede rashid Praktikant
02. november 2002 - 07:11 #4
Øv - den virker ikke. Går i stå. kan du hjælpe ? -> flemmingdahl
Avatar billede rashid Praktikant
06. november 2002 - 21:44 #5
opretter spørgsmålet igen !
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
Tag et kursus i Word og øg effektiviteten

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

IT-JOB