اذهب الي المحتوي
أوفيسنا

عدد صفحات ملف pdf


إذهب إلى أفضل إجابة Solved by محمد طاهر عرفه,

الردود الموصى بها

  • 3 weeks later...
  • أفضل إجابة

السلام عليكم

 

استخدم الكود التالي: مع تغيير المسار الذي تريده من D:\  الي اي مجلد تريده

المصدر من هنـــا 

و مرفق الملف للتجربة ، هذا الملف يقوم بعد صفحات ملفات الpdf الموجودة فى المسار D:\  و تسجيلها فى ورقة العمل الاولى

جرب و اخبرنا

Sub Test()
    Dim MyPath As String, MyFile As String
    Dim i As Long
    MyPath = "d:\"
    MyFile = Dir(MyPath & Application.PathSeparator & "*.pdf", vbDirectory)
    Range("A:B").ClearContents
    Range("A1") = "File Name": Range("B1") = "Pages"
    Range("A1:B1").Font.Bold = True
    i = 1
    Do While MyFile <> ""
        i = i + 1
        Cells(i, 1) = MyFile
        Cells(i, 2) = GetPageNum(MyPath & Application.PathSeparator & MyFile)
        MyFile = Dir
    Loop
    Columns("A:B").AutoFit
    MsgBox "Total of " & i - 1 & " PDF files have been found" & vbCrLf _
           & " File names and corresponding count of pages have been written on " _
           & ActiveSheet.Name, vbInformation, "Report..."
End Sub
'
Function GetPageNum(PDF_File As String)
    'Haluk 19/10/2008
    Dim FileNum As Long
    Dim strRetVal As String
    Dim RegExp
    Set RegExp = CreateObject("VBscript.RegExp")
    RegExp.Global = True
    RegExp.Pattern = "/Type\s*/Page[^s]"
    FileNum = FreeFile
    Open PDF_File For Binary As #FileNum
        strRetVal = Space(LOF(FileNum))
        Get #FileNum, , strRetVal
    Close #FileNum
    GetPageNum = RegExp.Execute(strRetVal).Count
End Function

 

 

GETPDF_pageno.xlsm

  • Like 1
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



سجل دخولك الان
  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information