![]() |
| Le forum de référence en programmation et développement. Articles, cours et tutoriels du débutant au chef de projet et DBA confirmé. | |||||||
|
|||||||
![]() |
|
|
Outils de la discussion |
|
|
#1 (permalink) |
|
Membre Confirmé
![]() Date d'inscription: mai 2006
Messages: 233
|
Bonjour à tous
Dans le code suivant, j'ai lancer l'application Notepad.exe avec la commande Shell, le problème est que le bloc note est bien lancé mais n'est apparemment l'application active car elle n'est pas au premier plan et les commande avec sendkeys fonctionne sur excel et pas sur le bloc note comme normalement ça devrais car c'est la boite de dialogue ouvrir d'excel qui s'affiche . Y a t il quelque chose de particulier avec le bloc note car avec l'application (debitpro) qui est juste après dans mon code les commandes Shell et sendkeys fonctionne trés bien. Code :
Dim NomFichier As Variant NomFichier = Application.GetSaveAsFilename("aze.cvs", fileFilter:="Fichier (*.csv), *.csv") If NomFichier <> False Then ActiveWorkbook.SaveAs NomFichier ActiveWorkbook.Close Else Exit Sub End If Shell """C:\Windows\system32\notepad.exe""" Application.SendKeys "^o" 'Shell """C:\Program Files\RozetUtil\DebitPro\debitpro.exe""" 'Application.SendKeys "%f+i" 'Application.SendKeys "{tab 2}" 'Application.SendKeys " " 'Application.SendKeys "{tab}" 'Application.SendKeys "~" End Sub Merci d'avance Dernière modification par bbil ; 29/05/2006 à 19h20 Motif: Rajout balises de code ... pensez-y !! # |
|
|
|
|
|
#5 (permalink) | |
![]() Date d'inscription: février 2005
Localisation: Une petite rue qui "avait" un merle
Messages: 11 640
|
J'utiliserais aussi DoEvents après (ok jmf ?
Code :
ActiveWorkbook.SaveAs NomFichier
DoEvents
Code :
Shell """C:\Windows\system32\notepad.exe""" DoEvents Citation:
__________________
Je...ne...réponds...pas....aux...questions...techniques... par...mp La recherche (VBA-E) : Le Forum, La FAQ, Les cours et tutoriels, Contribuez, Les Sources et... l'Aide en ligne !!!
|
|
|
|
|
|
|
#6 (permalink) |
|
Membre Confirmé
![]() Date d'inscription: mai 2006
Messages: 233
|
Il y a quelque chose que je ne comprend pas pourquoi utiliser wait de sendkeys alors qu'avec le code suivant:
Shell """C:\Windows\system32\notepad.exe""" le bloc note devrait etre mon application active alors que ce n'est pas le cas, puisqu'apparemment Excel est toujours actif. Desolé si je suis long à la détente ! |
|
|
|
|
|
#8 (permalink) |
|
Membre Confirmé
![]() Date d'inscription: mai 2006
Messages: 233
|
je vous remercie j'ai utilisé uniquement vos infos mais voila le résultat de mes recherche qui fonctionne :
Code :
Dim NomFichier As Variant NomFichier = Application.GetSaveAsFilename("aze.cvs", _ fileFilter:="Fichier (*.csv), _ *.csv") If NomFichier <> False Then ActiveWorkbook.SaveAs NomFichier ActiveWorkbook.Close Else Exit Sub End If ident = Shell("C:\Windows\system32\notepad.exe", vbNormalNoFocus) AppActivate ident DoEvents SendKeys "^o", True 'Shell """C:\Program Files\RozetUtil\DebitPro\debitpro.exe""" 'Application.SendKeys "%f+i" 'Application.SendKeys "{tab 2}" 'Application.SendKeys " " 'Application.SendKeys "{tab}" 'Application.SendKeys "~" End Sub Dernière modification par AlainTech ; 01/06/2006 à 07h49 Motif: Balises [code] |
|
|
|
|
![]() |
![]() |
||
[VBA-E] Problème avec Sendkeys
|
||
| Outils de la discussion | |
|
|