Excel - Ayuda con programa VBA para contar números de página de los archivos PDF en Excel

 
Vista:
Imágen de perfil de Pedro
Val: 2
Ha disminuido su posición en 5 puestos en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con programa VBA para contar números de página de los archivos PDF en Excel

Publicado por Pedro (1 intervención) el 02/07/2019 17:01:44
Saludos

Este código me funciona muy bien con varios archivos, pero con algunos otros no cuenta las hojas que incluye el archivo, por favor si ¿alguien más experimentado me puede ayudar a arreglar el problema?. Adjunto uno de los archivos con el cual no me funciona el programa.

De antemano, muchas gracias por su ayuda.

Atte.

Pedro Marza

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
Sub Test()
    Dim I As Long
    Dim xRg As Range
    Dim xStr As String
    Dim xFd As FileDialog
    Dim xFdItem As Variant
    Dim xFileName As String
    Dim xFileNum As Long
    Dim RegExp As Object
    Set xFd = Application.FileDialog(msoFileDialogFolderPicker)
    If xFd.Show = -1 Then
        xFdItem = xFd.SelectedItems(1) & Application.PathSeparator
        xFileName = Dir(xFdItem & "*.pdf", vbDirectory)
        Set xRg = Range("A1")
        Range("A:B").ClearContents
        Range("A1:B1").Font.Bold = True
        xRg = "File Name"
        xRg.Offset(0, 1) = "Pages"
        I = 2
        xStr = ""
        Do While xFileName <> ""
            Cells(I, 1) = xFileName
            Set RegExp = CreateObject("VBscript.RegExp")
            RegExp.Global = True
            RegExp.Pattern = "/Type\s*/Page[^s]"
            xFileNum = FreeFile
            Open (xFdItem & xFileName) For Binary As #xFileNum
                xStr = Space(LOF(xFileNum))
                Get #xFileNum, , xStr
            Close #xFileNum
            Cells(I, 2) = RegExp.Execute(xStr).Count
            I = I + 1
            xFileName = Dir
        Loop
        Columns("A:B").AutoFit
    End If
End Sub
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Antoni Masana
Val: 4.072
Plata
Ha mantenido su posición en Excel (en relación al último mes)
Gráfica de Excel

Ayuda con programa VBA para contar números de página de los archivos PDF en Excel

Publicado por Antoni Masana (1416 intervenciones) el 02/07/2019 18:03:48
Veo que la macro intenta analizar un fichero con formato PDF para saber o intentarlo en este caso, cuantas paginas tiene.
En patrón que buscas no existe en este fichero. Puede analizar los que te fallan para ver si encuentras otro patrón común.
En este fichero la más aproximado al numero de páginas que he visto es esto:

1
<</Lang(x-default)/Outlines 4 0 R/Pages 2 0 R/Type/Catalog>>

Yo desconozco la estructura de un PDF, mi mayor logro y era lo único que necesitaba era saber cuando finaliza la creación de un fichero PDF.
No puedo ayudarte más.

Saludos.
\\//_
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar