Sujet pénible pdf ! OLEobjetcs.Add + ClassType + Filename

Bonjour,

pas trés efficient en VBA Excel, je souhaite copier le contenu d'un document .pdf dont je récupère le chemin dans une cellule.

J'utilise la code suivant :

Nom = Sheets("XXXXX").Range("B7").Value ' cellule où je récupère le chemin la valeur est ici :R:\Dev\Service\HYDRAULIQUE\Feuilles de retouche\pdf\30801.pdf

Range ("C120").select ' cellule (zone) où je veux coller le contenu du .pdf

ActiveSheet.OLEObjects.Add ClassType:="PDFplus.Document", Filename:=Nom, Link:=False, DisplayAsIcon:=False

La message d'erreur est alors : Méthode Add de la classe OLEobjects a échoué - Erreur 1004

J'ai essayé en parrallèle les deux instructions suivantes qui marchent :

ActiveSheet.OLEObjects.Add Filename:=Nom, Link:=False, DisplayAsIcon:=False

Mais cette instruction colle un icone raccourci du .pdf et nom pas le contenu du fichier .pdf

ActiveSheet.OLEObjects.Add ClassType:="PDFplus.Document", Link:=False, DisplayAsIcon:=False

Le contenu du fichier .pdf est alors copié dans la feuille mais je suis obligé de passer par une fenêtre d'invite pour sélectionner le fichier 30801...ce que j'aimerais éviter puisque le raccourci est déjà dispo...

Avez vous une solution à mon pauvre problème ?

Remerciements

Eric

Bonjour eric spx et bienvenue sur le forum,

En faisait une tentative de mon côté, j'obtiens la syntaxe suivante

ActiveSheet.OLEObjects.Add(Filename:="C:\...............................\nom.pdf", Link:=False, DisplayAsIcon:=False).Select

Je t'invite à l'essayer et me dire si elle convient

Pour ma part cela semble faire ce que tu souhaites!

Si ce n'est pas le cas, SANS VBA, es-ce que tu arrives à avoir le résultat que tu espères?

Bonjour,

Je te remercie c'est la seule réponse du jour !

J'ai effectivement essayé aussi cette formulation avec ActiveSheet.OLEObjects.Add (Filename:=Nom, Link:=False, DisplayAsIcon:=True).select

qui marche effectivement aussi mais celà ne colle dans la feuille excel qu'un icone de raccourci sur lequel il faut double cliquer pour pouvoir lire le contenu du pdf.

Quand tu déclares l'argument ClassType:="PDFplus.Document en supplément, qui lui permets d'avoir directement le contenu dans la feuille Excel, tu as le message d'erreur ...

En fait ces deux instructions générent le message d'erreur

ActiveSheet.OLEObjects.Add ClassType:="PDFplus.Document", Filename:=Nom, Link:=False, DisplayAsIcon:=False

ActiveSheet.OLEObjects.Add (ClassType:="PDFplus.Document", Filename:=Nom, Link:=False, DisplayAsIcon:=False).Select

C'est pas simple VBA pour un pauvre ingé méca !!

Je continue mes recherches

Encore merci

eric spx a écrit :

C'est pas simple VBA pour un pauvre ingé méca !!

M'en sors très bien sans jamais l'avoir appris en cours Que de la débrouille, et des forums.

Je crois que tu ne pourras pas utiliser d'objet OLE pour ce que tu souhaites réaliser, as-tu tenté d'utiliser un contrôle activeX?

Onglet développeur -> Insérer -> Autres contrôles -> Adobe PDF Reader

Clique droit -> Propriétés -> remplir le src avec le chemin complet du fichier sur ton ordi.

Si ça fonctionne chez toi, il faudra faire la même chose, mais en VBA.

Merci encore je vais essayer

Si je trouve quelquechose de "convenable" je mettrai la soluce

Rechercher des sujets similaires à "sujet penible pdf oleobjetcs add classtype filename"