XL 2016 Macro pour convertir .PDF en .XLSX

saidoush

XLDnaute Junior
Bonjour,

J'ai tenté de reproduire les instructions d'une video en vu de convertir via une macro un document .pdf en .xlsx.

Chez lui,... ça marche lol 🥹

les seules différence c'est que moi j'utilise Foxit et l'adresse du fichier...(forcément)

Merci pour votre aide!!!
et bon dimanche.


Option Explicit

Sub convert_pdf_doc()

Dim foxitApp As Object
Dim av_doc As Object
Dim pdf_doc As Object
Dim jso_obj As Object

Dim sfile As String
Dim dfile As String
Dim ext As String

ext = "xlsx"
sfile = "C:\Users\FAMILLE\Documents\devis dentaire.pdf"
dfile = Replace(sfile, ".pdf", "." & ext, 1)


Set foxitApp = CreateObject("FoxitPDFReader.Application")

Set av_doc = foxitApp.GetActiveDoc()

If Not av_doc Is Nothing Then

Set pdf_doc = av_doc.GetPDDoc()
Set jso_obj = pdf_doc.GetJSObject

jso_obj.SaveAs dfile, "com.foxitpdf.reader." & ext

av_doc.Close

End If

Set foxitApp = Nothing
Set av_doc = Nothing
Set pdf_doc = Nothing
Set jso_obj = Nothing

End Sub
 

Staple1600

XLDnaute Barbatruc
Re,

Si j'en crois la maison mère, Office 2016 sait ouvrir les PDFS
Notamment Word

Mais on peut avoir des surprises selon les PDF

Si tu arrives à ouvrir ton PDF dans Word, reste plus qu'à faire une macro pour le contenu du fichier Word dans un fichier Excel.

PS: Merci pour le lien
Cela fonctionne chez lui, car il dispose d'Adobe (et non pas d'Adobe Reader)
 

saidoush

XLDnaute Junior
Bonjour,

On peut également utiliser Power Query pour ouvrir des pdf, et plus précisément des tables contenus dans les pdf.
Ouiii bien-sûr...
Mais bien qu'ayant office 2016, cette option n'existe pas.
Il faudrait connaitre le but recherché et avoir un exemple anonymisé d'un pdf.
@+
Il n'y a aucun but précis simplement de créer une application maison.
 

Laurent78

XLDnaute Occasionnel
re,

De mémoire, n'ayant pas l'ouverture de pdf dans PQ dans Excel, j'étais passé par PowerBI desktop, qui lui le permettait, j'avais fait le "code" M pour ouvrir le(s) pdf(s) et ensuite j'avais copié le code dans une requête PQ d'Excel, cela avait fonctionné.
Je me demande si je suis clair ... :rolleyes:
 

saidoush

XLDnaute Junior
bonjour
c'est pas par ce que tu va mettre le nom de ton app pdf dans le createobject à la place de "acraexch.hiliteList" que ca va marcher
a ce jour j'ai pas connaissance que foxit ai crée un com pour vb ou vba
donc ça ne peut fonctionner
J'ai trouvé ça : Declare Function ShellExecute Lib "shell32.dll" Alias "ShellExecuteA" _
> (ByVal hwnd As Long, ByVal lpOperation As String, _
> ByVal lpFile As String, ByVal lpParameters As String, _
> ByVal lpDirectory As String, ByVal nShowCmd As Long) As Long
>
> '---------------------------------
> Sub Ouvrir_Un_Fichier()
> Dim Fichier As String
> Fichier = "C:\Chemin complet\Mon_Fichier.pdf"
> If Dir(Fichier) <> "" Then
> ShellExecute 0, "open", Fichier, "", "", 0
> End If
> End Sub
 

Discussions similaires

Statistiques des forums

Discussions
312 242
Messages
2 086 528
Membres
103 243
dernier inscrit
SAH