|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : décembre 2010 Messages : 4 ![]() |
Salut à toutes et à tous
Je suis nouveau sur ce forum et je viens à vous car il y a un problème auquel mes compétences ne suffisent pas. j'espère que vous pourrez m'aider à trouver une solution Voici le problème J'utilise excel pour ouvrir un autre logiciel professionnel (qui est différent d'office !!!) J'arrive à l'ouvrir sans problème. De ce coté là pas de soucis. Je précise que que avant que excel n'ouvre l'application, il effectue de manière automatique un copier d'une donnée précise. CE QUE JE N'ARRIVE PAS EST LA: je veux que la donnée qui a été copiée soit collée sur le logiciel qui a été lancé SANS QUE JE FASSE CTRL+V. je veux que le logiciel se lance et que le champ qui est directement sélectionné soit rempli. voila. C'est mon problème. Si vous pouvez me résoudre cette énigme, je serai trop happy. Merci d'avance cordialement pierre |
|
|
00
|
|
|
#2 |
|
Membre confirmé
![]() Ingé. Info. Inscription : janvier 2008 Messages : 338 ![]() |
Tout dépendra du logiciel ! et pour la plus part ce que tu veux faire s'apparrente à de la magie, cela dit certains logiciels permettent de démarrer avec des "paramètres" en console notamment,(ex: Outlook nouveau mail).
Mais sans le nom de ton logiciel, impossible de t'aider.
__________________
Memento Quia Pulvis Es, Et In Pulverem ReverteriS |
|
|
00
|
|
|
#3 |
|
Membre régulier
![]() Inscription : juin 2009 Messages : 104 ![]() |
Pour un novice, ça va effectivement s'apparenter à de la magie mais comme toute magie faite par un professionnel, ce n'est que de l'illusion avec un truc qu'on n'arrive pas à voir.
Le truc n'est pas facile à expliquer en 2 lignes et le résultat n'est pas forcément fiable. Si tu ne comprends rien quand je te parle de l'objet WScript.Shell, les méthodes Appactivate, Sendkeys et Sleep, alors il faudra un roman et du temps pour que tu atteignes le résultat voulu. De plus, comme je te l'ai dit, le résultat n'est pas forcément fiable. Si tu as beaucoup de données à transférer dans ton application par ce moyen, et qu'il y a une donnée par cellule dans Excel, le transfert ne doit pas être trop rapide par cellule car sinon la macro va perdre les pédales et mettre tes données au mauvais endroit, si elle arrive à écrire quelque chose. C'est pourquoi il faut aussi utiliser la méthode Sleep pour ralentir la macro et laisser du temps à la méthode Sendkeys (permet de simuler la frappe de touches au clavier) pour faire son boulot. Il faut d'abord s'assurer que, dans ton appli, tu peux naviguer d'un champ à l'autre par le clavier, sinon c'est mort. Je t'invite donc d'abord à chercher des infos sur l'objet WScript.Shell et jouer avec pour comprendre comment il fonctionne. Ceci dit, si tu n'as réellement qu'une seule donnée à transférer dans ton appli, tu peux te passer de la méthode Sleep et dans ce cas, il existe en VBA l'équivalent des méthodes Appactivate et Sendkeys de l'objet WScript.Shell, qui portent exactement le même nom. Si c'est vraiment ce cas de figure, je crois que tu irais plus vite à faire Ctrl+V. |
|
|
00
|
|
|
#4 |
|
Membre confirmé
![]() Ingé. Info. Inscription : janvier 2008 Messages : 338 ![]() |
@djib29
Effectivement, je n'avais pas pensé à ça sous cet angle la. Bien que de la bidouille, ça a le mérite d'être une des solutions c'est vrai !
__________________
Memento Quia Pulvis Es, Et In Pulverem ReverteriS |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com