Բաց թողնել հիմնական բովանդակությունը

Ինչպե՞ս խմբաքանակի միջոցով մի քանի Word փաստաթղթեր փոխարկել pdf ֆայլերի:

Word- ի փաստաթուղթը PDF ֆայլի վերափոխելը ձեզ համար հեշտ է Word- ում Save as գործառույթով: Բայց եթե ուզում եք բոլոր Word փաստաթղթերը թղթապանակում փոխարկել PDF ֆայլերը միանգամից առանձնացնելու համար, ինչպե՞ս կարող եք դրան հասնել: Այս հոդվածը ձեզ ցույց կտա VBA կոդ ՝ Word- ում բազմաթիվ Word փաստաթղթեր խմբաքանակով PDF ֆայլերի վերափոխելու համար:

Խմբաքանակի մի քանի Word փաստաթղթեր VBA- ով վերափոխեք pdf ֆայլերի
Խմբաքանակը մի քանի Word փաստաթղթեր փոխակերպում է pdf ֆայլերի Kutools- ի համար Word- ով


Խմբաքանակի մի քանի Word փաստաթղթեր VBA- ով վերափոխեք pdf ֆայլերի

Հաջորդ VBA կոդը օգնում է ձեզ արագորեն վերափոխել բոլոր Word փաստաթղթերը թղթապանակում միանգամից pdf ֆայլերի: Խնդրում եմ, արեք հետևյալ կերպ.

1. Word- ում սեղմիր ալտ + F11 բացել ստեղները Microsoft Visual Basic հավելվածների համար պատուհան.

2. Մեջ Microsoft Visual Basic հավելվածների համար պատուհանը, սեղմեք Տեղադրել > Մոդուլներ, ապա VBA կոդի ներքո պատճենեք Մոդուլի պատուհանում:

VBA կոդ. Word- ում խմբաքանակը փոխակերպում է բազմաթիվ Word փաստաթղթեր pdf ֆայլերի

Sub ConvertWordsToPdfs()
'Updated by Extendoffice 20181123
    Dim xIndex As String
    Dim xDlg As FileDialog
    Dim xFolder As Variant
    Dim xNewName As String
    Dim xFileName As String
    Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
    If xDlg.Show <> -1 Then Exit Sub
    xFolder = xDlg.SelectedItems(1) + "\"
    xFileName = Dir(xFolder & "*.*", vbNormal)
    While xFileName <> ""
        If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 4) <> ".docx") Then
            xIndex = InStr(xFileName, ".") + 1
            xNewName = Replace(xFileName, Mid(xFileName, xIndex), "pdf")
            Documents.Open FileName:=xFolder & xFileName, _
                ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
                PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
                WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
                wdOpenFormatAuto, XMLTransform:=""
            ActiveDocument.ExportAsFixedFormat OutputFileName:=xFolder & xNewName, _
                ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
                wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
                Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
                CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
                BitmapMissingFonts:=True, UseISO19005_1:=False
            ActiveDocument.Close
        End If
        xFileName = Dir()
    Wend
End Sub

3. Սեղմեք F5 ծածկագիրը գործելու համար:

4. sննման երկխոսություն է բացվում, խնդրում ենք ընտրեք այն թղթապանակը, որը պարունակում է Word փաստաթղթեր, որոնք կփոխարկեք pdf ֆայլերի, և կտտացրեք OK կոճակը:

Այնուհետև ընտրված թղթապանակի բոլոր Word փաստաթղթերը միանգամից վերափոխվում են առանձին pdf ֆայլերի: Տեսեք,


Խմբաքանակը մի քանի Word փաստաթղթեր փոխակերպում է pdf ֆայլերի Kutools- ի համար Word- ով

Եթե ​​VBA կոդը դժվար է կարգավորել, կարող եք փորձել այն Փոխակերպել փաստաթղթերը օգտակարությունը Kutools բառի համար խնդիրը լուծելու համար:

Kutools բառի համար ՝ ավելի քան 100 հարմար բառերի հավելումներով, անվճար փորձելու առանց սահմանափակման 60 օր.

1: սեղմեք Kutools Plus > Doc / Docx, Տեսեք,

2. Մեջ Փաստաթղթի ձևաչափի փոխարկիչ պատուհանը, դուք պետք է անեք հետևյալը.

2.1) Ընտրեք պանակը, որը պարունակում է փաստաթղթեր, որոնք դուք կփոխարկեք pdf- ի Աղբյուրի ֆայլի պանակ Բաժին;
2.2 Ընտրել Փոխակերպել docx- ը pdf- ի - ից Ձևաչափի փոխարկում բացվող ցուցակ;
2.3) Լռելյայնորեն, Նպատակակետի ուղին նույնն է, ինչ աղբյուրը վանդակը ստուգված է: Եթե ​​ցանկանում եք բոլոր վերափոխված pdf ֆայլերը տեղադրել նույն պանակում, պարզապես այս տարբերակը ընտրված պահեք.
Եթե ​​ցանկանում եք առանձնացնել pdf ֆայլերը և աղբյուրի փաստաթղթերը, ապա պետք է ապանշել Նպատակակետի ուղին նույնն է, ինչ աղբյուրը տուփը և ընտրեք նոր պանակ ՝ pdf ֆայլերը համակարգչում պահելու համար Պահպանել տուփ;
2.4) Կտտացրեք այն սկիզբ կոճակ Տեսեք,

3. Դրանից հետո բացվում է երկխոսության տուփ ՝ ձեզ ասելու համար, թե քանի փաստաթուղթ է հաջողությամբ փոխարկվել, կտտացրեք այն OK կոճակը և փակել այն Փաստաթղթի ձևաչափի փոխարկիչ պատուհան.

Այժմ .docx ձևաչափի բոլոր փաստաթղթերը վերափոխվում են pdf ֆայլերի:

Եթե ​​ցանկանում եք անվճար օգտվել այս օգտակար ծառայությունից, գնացեք այստեղ անվճար ներբեռնել ծրագրաշարը նախ և ապա անցեք գործողությունը կիրառելու համար ՝ համաձայն վերը նշված քայլերի:

Գրասենյակի արտադրողականության լավագույն գործիքները

Kutools բառի համար - Բարձրացրեք ձեր բառի փորձը Over-ի հետ 100 Ուշագրավ առանձնահատկություններ!

🤖 Kutools AI օգնականՓոխակերպեք ձեր գրածը AI-ի միջոցով - Ստեղծեք բովանդակություն  /  Վերաշարադրել տեքստը  /  Ամփոփել փաստաթղթերը  /  Հարցրեք տեղեկատվության համար Փաստաթղթի հիման վրա, բոլորը Word-ի շրջանակներում

📘 Փաստաթղթերի տիրապետում: Էջերի բաժանում  /  Միաձուլեք փաստաթղթերը  /  Արտահանել ընտրություն տարբեր ձևաչափերով (PDF/TXT/DOC/HTML...)  /  Խմբաքանակի փոխակերպում PDF-ի  /  Արտահանել էջերը որպես պատկերներ  /  Միանգամից մի քանի ֆայլ տպեք...

Բովանդակության խմբագրում: Խմբաքանակի որոնում և փոխարինում Բազմաթիվ Ֆայլերի միջով  /  Չափափոխել բոլոր նկարները  /  Փոխադրել աղյուսակի տողերը և սյունակները  /  Աղյուսակը տեքստի վերափոխել...

🧹 Անհեշտ մաքրություն:Հեռացրու Լրացուցիչ տարածքներ  /  Բաժնի ընդմիջումներ  /  Բոլոր վերնագրերը  /  Տեքստային տուփեր  /  Hyperlinks  / Լրացուցիչ հեռացման գործիքների համար այցելեք մեր Հեռացնել խումբը...

Ստեղծագործական ներդիրներՆերդիր Հազար բաժանիչներ  /  Նշեք վանդակները  /  Ռադիո կոճակներ  /  QR Code  /  Շտրիխ կոդ  /  Անկյունագծային աղյուսակ  /  Հավասարության վերնագիր  /  Նկարի վերնագիր  /  Աղյուսակի վերնագիր  /  Բազմաթիվ նկարներ  / Բացահայտեք ավելին Տեղադրեք խումբը...

🔍 Ճշգրիտ ընտրանքներ: Մատնանշել կոնկրետ էջեր  /  սեղաններ  /  ձեւավորում  /  վերնագրի պարբերություններ  / Ընդլայնել նավարկությունը ավելին Ընտրեք հատկանիշներ...

Աստղերի բարելավումներ: Արագ նավարկեք ցանկացած վայր  /  կրկնվող տեքստի ավտոմատ տեղադրում  /  անխափան անցում փաստաթղթի պատուհանների միջև  /  11 Փոխակերպման գործիքներ...

???? Ցանկանու՞մ եք փորձել այս հնարավորությունները: Kutools-ը Word-ի համար առաջարկում է ա 60 օր անվճար դատավարություն, առանց սահմանափակումների! 🚀
 
Comments (36)
Rated 5 out of 5 · 3 ratings
This comment was minimized by the moderator on the site
Just found this, very helpful. Also thanks for the suggested mods above. I am struggling with the following:

If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 4) <> ".docx") Then


It seems to ask to do the conversion if it's not a doc or docx? (Leaving aside that, I think, for docx it should be last 5 chars, not 4?) Anyway,
This comment was minimized by the moderator on the site
the code stopped. I clicked debug. code below was highlighed yellow

Please, any assistance? thank you

Documents.Open Filename:=xFolder & xFileName, _
ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
wdOpenFormatAuto, XMLTransform:=""
This comment was minimized by the moderator on the site
Thank you for this. It has just saved me so much time and provided education. I will peruse your site for more top tips.
Thank you again. Brilliant quick fix. One does have to ask, why do MS make such things so impossible to find in their products.
Rated 5 out of 5
This comment was minimized by the moderator on the site
Здравствуйте! Огромное спасибо за модуль! Но есть проблема, у меня куча папок и в каждой папке больше двухсот файлов с разными именами.. Можно ли сделать так чтобы ваш модуль сохранял файлы в PDF не под номерами 1,2,3... и т.д, а под своими собственными именами файлов!? Помогите пожалуйста, и я буду молиться за вас ВЕЧНО!!))
This comment was minimized by the moderator on the site
Hi Егор,
I don't quite understand your question. After converting the file using the VBA code, the name of the PDF file is the same as the name of the Word file.
This comment was minimized by the moderator on the site
Здравствуйте! Большое спасибо вам, за то что вы есть! Спасибо за код он почти идеальный, но ОЧЕНЬ прошу Вас помочь с одним нюансом... Мне Очень важно чтоб ваш макрос сохранял в PDF не под номерами 1.2.3 и т.д, а брал название вордовского файла и сохранял под ним. У меня сто папок и в каждой по 251 файл со своим собственным названием... Мне это Очень нужно, пожалуйста помогите!?????.....
This comment was minimized by the moderator on the site
The VBA macro worked like a charm! :D
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hi Myles,
Thank you for your feedback.
This comment was minimized by the moderator on the site
Hello is there a way to select a different output folder and not the original folder?

thank you
This comment was minimized by the moderator on the site
Hi Vincent,
Please try the following VBA code. After running the code, an Open window pops up, please select a folder containing the douments you want to convert, in the second popping up Save PDF files in window, select a folder to save the PDF files.

Sub ConvertWordsToPdfs()
'Updated by Extendoffice 20220805
  Dim xIndex As String
  Dim xDlg As FileDialog, xSaveDlg As FileDialog
  Dim xFolder As Variant, xSaveFolder As Variant
  Dim xNewName As String
  Dim xFileName As String
  On Error Resume Next
  Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
  xDlg.Title = "Open"
  xDlg.ButtonName = "Open"
  If xDlg.Show <> -1 Then Exit Sub
  xFolder = xDlg.SelectedItems(1) + "\"
  xFileName = Dir(xFolder & "*.*", vbNormal)
  Set xSaveDlg = Application.FileDialog(msoFileDialogFolderPicker)
  xSaveDlg.Title = "Save PDF files in"
  xSaveDlg.ButtonName = "Save"
  If xSaveDlg.Show <> -1 Then Exit Sub
  xSaveFolder = xSaveDlg.SelectedItems(1) + "\"
  Application.DisplayAlerts = wdAlertsNone
  While xFileName <> ""
      If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 4) <> ".docx") Then
          xIndex = InStr(xFileName, ".") + 1
          xNewName = Replace(xFileName, Mid(xFileName, xIndex), "pdf")
          Documents.Open FileName:=xFolder & xFileName, _
              ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
              PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
              WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
              wdOpenFormatAuto, XMLTransform:=""
          ActiveDocument.ExportAsFixedFormat OutputFileName:=xSaveFolder & xNewName, _
              ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
              wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
              Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
              CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
              BitmapMissingFonts:=True, UseISO19005_1:=False
          ActiveDocument.Close wdSaveChanges
      End If
      xFileName = Dir()
  Wend
  Application.DisplayAlerts = wdAlertsAll
  Set xDlg = Nothing
  Set xSaveDlg = Nothing
End Sub
This comment was minimized by the moderator on the site
The code does not convert my Word files
This comment was minimized by the moderator on the site
This code is amazing and fast but if there is a link in the Doc file it will open a window stating there may be information linked to another file apply these changes? and then another asking to save as. Is there a way to add to the code to automatically do these steps for me? Out of ~800 there are ~40 and I must be present and do this every time.
thank you
Rated 5 out of 5
This comment was minimized by the moderator on the site
Hi Vincent,
The following VBA code can do you a favor. Please give it a try. Thank you for your feedback.

Sub ConvertWordsToPdfs()
'Updated by Extendoffice 20220805
  Dim xIndex As String
  Dim xDlg As FileDialog
  Dim xFolder As Variant
  Dim xNewName As String
  Dim xFileName As String
  On Error Resume Next
  Set xDlg = Application.FileDialog(msoFileDialogFolderPicker)
  If xDlg.Show <> -1 Then Exit Sub
  xFolder = xDlg.SelectedItems(1) + "\"
  xFileName = Dir(xFolder & "*.*", vbNormal)
  Application.DisplayAlerts = wdAlertsNone
  While xFileName <> ""
      If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 4) <> ".docx") Then
          xIndex = InStr(xFileName, ".") + 1
          xNewName = Replace(xFileName, Mid(xFileName, xIndex), "pdf")
          Documents.Open FileName:=xFolder & xFileName, _
              ConfirmConversions:=False, ReadOnly:=False, AddToRecentFiles:=False, _
              PasswordDocument:="", PasswordTemplate:="", Revert:=False, _
              WritePasswordDocument:="", WritePasswordTemplate:="", Format:= _
              wdOpenFormatAuto, XMLTransform:=""
          ActiveDocument.ExportAsFixedFormat OutputFileName:=xFolder & xNewName, _
              ExportFormat:=wdExportFormatPDF, OpenAfterExport:=False, OptimizeFor:= _
              wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
              Item:=wdExportDocumentContent, IncludeDocProps:=True, KeepIRM:=True, _
              CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
              BitmapMissingFonts:=True, UseISO19005_1:=False
          ActiveDocument.Close wdSaveChanges
      End If
      xFileName = Dir()
  Wend
  Application.DisplayAlerts = wdAlertsAll
End Sub
This comment was minimized by the moderator on the site
Вот тут во втором условии надо 4 заменить на 5:
If ((Right(xFileName, 4)) <> ".doc" Or Right(xFileName, 5) <> ".docx") Then
Для исключения проблемы наличия точек можно сделать так:
xIndex = InStr(xFileName, ".doc") + 1
Ну и про советы других товарищей не забыть ;)

This comment was minimized by the moderator on the site
Thank you so much! Saved me so much time!
There are no comments posted here yet
Load More
Please leave your comments in English
Posting as Guest
×
Rate this post:
0   Characters
Suggested Locations