Boostez vos compétences Excel avec notre communauté !
Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force.
Apprenez, échangez, progressez – et tout ça gratuitement !
👉 Inscrivez-vous maintenant !
Comme indiquer dans le titre du sujet, je suis à la recherche d'une macro me permettant l'ouverture d'un fichier .pdf se trouvant à la racine du dossier de mon fichier excel.
tu as écrit : « .FollowHyperlink doit visiblement passer par une passerelle » ; je ne sais pas ce que tu appelles une passerelle ; je connais les passerelles de bois pour franchir un précipice dans la jungle amazonienne, mais une passerelle en informatique, mystère !
tu as écrit : « avec ton wait c'est le message de sécurité que j'ai maintenant » ; je ne vois pas de quel message de sécurité tu parles ; ou peut-être celui-ci : « attention : ne vous balancez pas sur la passerelle de bois ou elle risque de se détacher et vous finirez au fond du ravin ».
tu as écrit : « et puis wait 1 seconde non mais ça va pas non !!! » ; ben quoi, 1 seconde, c'est tout juste 1000 millisecondes. 😜
j'ai compris que &H11 est le code hexa de la touche Ctrl et que &H2 est le relâcher de cette touche, mais les "JJJJJ" et les 0, mystère ! je m'demande bien où tu vas chercher tout ça, lolllllll ! 😅 c'est une instruction bien compliquée juste pour éviter la rémanence de la touche Ctrl, mais en tout cas, ça marche super bien ! et pour tes deux codes VBA ! le 2ème est effectivement un peu plus rapide !!!
j'ai pas compris non plus pourquoi y'a On Error Resume Next pour le 2ème code VBA ; quelle est l'erreur qui peut survenir ?
j'ai adapté à mon fichier Essai.pdf, et en enlevant 2 paires de parenthèses inutiles :
tu as droit à un autre "J'adore" pour ces 2 super-solutions ! 😉 (sur ton post #24) ; j'ai mis aussi un autre "J'adore" pour toutes les infos de ton post #20.
tu as écrit : « la solution de Soan (wait 1 seconde) marche pas si on reste appuyé sur CTRL » ; exact, j'ai pu le vérifier, mais en pratique, je ne garde pas longtemps le doigt appuyé sur la touche Ctrl. 😉
tu as écrit : « teste une de mes solutions, plus de soucis de latence , même en restant appuyé sur CTRL » ; exact, je confirme : j'ai pu le vérifier aussi. 👍
oui je viens de le voir en effet
teste une de mes solutions, plus de soucis de latence , même en restant appuyé sur CTRL
la solution de Soan (wait 1 seconde ),marche pas si on reste appuyé sur CTRL
justement, j'voulais t'en parler, de ton post #27 ; quand tu fais Ctrl puis e au lieu de Ctrl+e ça m'rappelle qu'il y a une option de Windows, je sais plus où ni laquelle au juste, qui est pour aider ceux qui ont du mal à appuyer sur deux touches en même temps ; c'est en lien avec les options d'ergonomie, et ça doit être vers les options de paramétrage des touches rémanentes ; je pense que tu as dû activer cette option. 😉
moi aussi, d'habitude, j'ouvre les fichiers pdf en faisant dessus un double-clic (ou un seul clic puis Entrée). 🙂 mais j'préfère les jus d'fruits à la bière. 😜 (même si la bière est maltée) ; l'antésite aussi, c'est très bon ; c'est comme du sirop : faut en mettre que quelques gouttes et les diluer dans l'eau ; c'est à base de réglisse et c'est très désaltérant ! (surtout en été !)
y'a plusieurs parfums, par exemple à la menthe ou au citron ; y'a aussi à l'anis, mais j'ai pas aimé ; peut-être que toi tu aimeras ? au tout début, l'antésite était vendu uniquement dans les pharmacies, mais maintenant, tu en trouves facilement dans les supermarchés, dans le même rayon que celui des sirops.
dans la réalité les bouteilles ont la même taille ; elles sont petites car c'est concentré ; c'est sans sucre et sans alcool ; tu vois ces bouteilles comme ça dans le rayon : y'a pas d'carton autour (même si c'était le cas au début), y'a juste un plastique rigide autour du bouchon.
j'ai compris que &H11 est le code hexa de la touche Ctrl et que &H2 est le relâcher de cette touche, mais les "JJJJJ" et les 0, mystère ! je m'demande bien où tu vas chercher tout ça, lolllllll ! 😅 c'est une instruction bien compliquée juste pour éviter la rémanence de la touche Ctrl, mais en tout cas, ça marche super bien ! et pour tes deux codes VBA ! le 2ème est effectivement un peu plus rapide !!!
pour l'explication
ExecuteExcel4Macro ("CALL(""nom de la dll"",""nom de l'api"",""JJJJJ""," & code touche& ", " & bscan & ", " & up ou down & ", " & info & ")")
pour le "JJJJJ" la lettre J c'est pour les numériques et byte et double il y a "C" aussi
en fait il représente une déclaration abrégée
en effet quand tu déclare les api les arguments ,c'est "byval truc as machin,byval etc...."
un J pour le return (même si c'est une déclare sub) et un j pour chaque argument
selon les api les lettre changent c'est en fonction du type des arguments
et les api qui renvoie un long ou un double comme les apis pour les fenêtre on rajoute un "j" en plus
pour certaines api , des fois ça devient plus complexe
c'est vrai que codé comme ça ça parait compliqué mais l'avantage c'est que c'est passe partout tu refile la fonction a qui tu veux ,sur le system 32 ou 64 c'est pareil
pour que tu comprenne
voila déclaration en bon est du forme
VB:
DeclareSub keybd_event Lib"user32"Alias"keybd_event"(ByVal bVk AsByte,ByVal bScan AsByte,ByVal dwFlags AsLong,ByVal dwExtraInfo AsLong)''ici on met pas de return c'est une sub
en gros ce que je fait dans la macro4
Code:
keybd_event Declare Sub keybd_event Lib "user32" Alias "keybd_event" ( J,J,J,J)J
j'ai relu ton post #22 ; pour ton message d'erreur "Certains fichiers peuvent contaminer ou endommager votre ordinateur. Etc..." la seule explication que je vois est celle-ci : tu as une très ancienne version de Reader qui comporte une faille de sécurité, et ton navigateur affiche ce message pour t'en protéger ; donc si tu upgrades ton Reader, le message ne devrait plus apparaître ; j'ai vérifié que j'ai la toute dernière version :
* toutes les infos qui vont suivre ci-dessous sont indépendantes de la marque de ton PC, et indépendantes d'Office 2019 ; c'est uniquement par rapport à mon Windows 7 et mon Reader DC.
* va sur le bureau de Windows, appuie sur la touche Windows, et tape « reader » ; tu dois voir que ça a sélectionné ton programme Reader, comme ceci :
ou tape « adobe » ou « acrobat » : tu auras peut-être « Adobe Acrobat 8.1 »
* appuie sur Entrée pour lancer le programme ; avec ma version, le titre de la fenêtre est : « Adobe Acrobat Reader DC (32-bit) » ; clique sur le menu Aide / A propos d'Adobe Acrobat Reader DC...
ça affiche ces infos :
* il y a aussi :
et comme j'ai la toute dernière version, ça affiche :
sur ton PC, ça va très probablement rechercher la dernière version et l'installer. 🙂
[Pour infos]
Le message cité par job75 n'a rien à voir avec la version d'Acrobat.
C'est un message d'alerte généré par Excel (en rapport avec les liens hypertexte)
On peut reproduire ce message avec le test ci-dessous
VB:
Sub Test()Dim sPath
sPath ="C:\Users\Lambda\test.xld"
ThisWorkbook.FollowHyperlink sPath
EndSub
oui, celui-ci
VB:
Sub Test_B()Dim sPath
sPath ="C:\Users\Les\Carottes\Sont\cui.tes"
ThisWorkbook.FollowHyperlink sPath
EndSub
NB: Exécuter les macros sans changer la variable sPath.
tu as écris que le message d'erreur est généré par Excel ; mais en fait, je crois que ça arrive plutôt de façon indirecte quand VBA exécute .FollowHyperlink : ça fait un appel au navigateur pour rechercher le lien et c'est là que le navigateur affiche le message d'erreur, pas Excel ! (mais je peux me tromper)
par contre, je suis tout à fait sûr des infos que j'ai données à job75 dans mon post #40 s'il veut connaître la version exacte de son logiciel Adobe Reader, et s'il veut installer la toute dernière version ; il aura alors la même version que la mienne : « Adobe Acrobat Reader DC Version 2021.001.20138 ».
alors va dans le Panneau de configuration de Windows et clique sur « Programmes et fonctionnalités » ; dans la liste des programmes installés sur ton PC, tu devrais avoir une ligne qui commence par Adobe vu que c'est la société éditrice du logiciel Reader ; dans ma liste, j'ai tout ceci (sur une seule ligne, et en 5 colonnes) :
* Nom : Adobe Acrobat Reader DC - Français
* Éditeur : Adobe Systems Incorporated
* Installé le : ../../..
* Taille : 388 Mo
* Version : 21.001.20138
sur mon PC, ce logiciel est dans le dossier "C:\Programs Files (x86)\Adobe" ; c'est le dossier d'installation par défaut ; à tout hasard, si tu ne le vois pas à cet endroit, regarde dans le dossier des applications 64 bits : "C:\Programs" ; tu aurais alors : "C:\Programs\Adobe".
si tu l'trouves toujours pas, j'commence à croire que t'as une appli Reader fantôme, lollllllll ! 😅 ton PC est p't'être hanté ? 👻 autre possibilité (même si j'y crois pas trop) : Reader ne serait pas installé sur ton PC et tu aurais seulement l'Extension Reader, qui serait dans les Extensions de ton navigateur internet.
Au cas où vraiment tu n'as pas Reader sur ton PC, tu peux le télécharger ICI ; tu verras ceci :
si tu veux la version gratuite, utilise le bouton « Télécharger » de la 3ème case de droite.
- Navigue sans publicité - Accède à Cléa, notre assistante IA experte Excel... et pas que... - Profite de fonctionnalités exclusives Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel. Je deviens Supporter XLD