joi, 30 aprilie 2015

Convertire automată a fişierelor WORD dintr-un folder în fişiere PDF


Dacă trebuiesc convertite nai multe fişiere WORD dintr-un folder în fişiere PDF se poate folosi următorul script VB care realizează conversia automată.

Descărcaţi fişierul Script

sau încărcaţi intr-un fişier vbs următoarele instrucţiuni


Dim objFSO,objFile, objFolder,wordapp,doc,PDFPath,strFileName,fullPath

Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = InputBox("Please enter full folder name :", _
    "Create PDF files from Word files in a folder")
If  objStartFolder = "" Then
   Wscript.Echo "You must enter a full folder name."
Else
     MsgBox "Please ensure Word documents are saved,if that press 'OK' to continue",,"Warning"
     Set objFolder = objFSO.GetFolder(objStartFolder)
     Set colFiles = objFolder.Files

    For Each objFile in colFiles
    strFileName = objFile.Name
        If ((objFSO.GetExtensionName(strFileName) = "doc") Or  (objFSO.GetExtensionName(strFileName) = "docx") Or (objFSO.GetExtensionName(strFileName) ="rtf"))Then
    
    
        Dim strComputer,objWMIService,colProcessList,objProcess
        strComputer = "."
        Set objWMIService = GetObject("winmgmts:" _
        & "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
        'Get the WinWord.exe
        Set colProcessList = objWMIService.ExecQuery _
        ("SELECT * FROM Win32_Process WHERE Name = 'WINWORD.EXE'")
        For Each objProcess in colProcessList
        'Stop it
        objProcess.Terminate()
        Next
   

                fullPath = (objStartFolder & "\" & strFileName)
                Set objFS = CreateObject("Scripting.FileSystemObject")
                baseName = objFS.GetBaseName(fullPath)
                Set objFS = Nothing
                PDFPath = objStartFolder & "\" & baseName & ".pdf"
                Set wordapp = CreateObject("Word.application")
                Set doc = wordapp.documents.open(fullPath)
                doc.saveas PDFPath,17
                doc.close
                wordapp.quit
 
 
        End If


    next
  
  
  
    End If

Set objFSO = Nothing
Wscript.Echo "Word to PDF file conversion is complete "










NB Pentru ca scriptul să funcţioneze sunt necesare
-cont administrator cu  UAC not at very high

-office 2007 or later editions

Niciun comentariu:

Trimiteți un comentariu

Comentează această postare.