Précédent   Forum des professionnels en informatique > Logiciels > Microsoft Office > Excel > Macros et VBA Excel
Macros et VBA Excel Vos questions relatives aux macros Excel, à l'utilisation de VBA et à l'automatisation de vos classeurs Excel.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 12/08/2011, 11h55   #1
Invité régulier
 
Inscription : décembre 2010
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 36
Points : 7
Points : 7
Par défaut Commande sendkeys blocnote

Bonjour j'essaie d'utiliser la fonction sendkeys sans succès pourriez vous me dire ce qui ne va pas dans mon code ?

Merci

Code :
1
2
3
4
5
6
7
8
9
10
11
12
 
Sub Notepad()
 
Dim txtName As String
Dim notepadID
 
notepadID = shell("NOTEPAD.EXE " & txtName, 1)
AppActivate notepadID, True
 
SendKeys "a" & "{ENTER}", True
 
End Sub
F.Salenko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 12h11   #2
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 885
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 885
Points : 7 151
Points : 7 151
Bonjour,

Supprime le true
Code :
SendKeys "a" & "{ENTER}"
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 12h24   #3
Invité régulier
 
Inscription : décembre 2010
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 36
Points : 7
Points : 7
Toujours rien !
F.Salenko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 12h54   #4
Expert Confirmé Sénior
 
Avatar de jfontaine
 
Homme Jérôme FONTAINE
Contrôleur de Gestion
Inscription : juin 2006
Messages : 3 885
Détails du profil
Informations personnelles :
Nom : Homme Jérôme FONTAINE
Âge : 38
Localisation : France, Sarthe (Pays de la Loire)

Informations professionnelles :
Activité : Contrôleur de Gestion

Informations forums :
Inscription : juin 2006
Messages : 3 885
Points : 7 151
Points : 7 151
et qu'est ce qui ne va pas, parceque même le code initiale fonctionne sur mon poste
Notepad s'ouvre et "a" est écrit avec un retour chariot
__________________
Jérôme

Citation:
"Ils ne savaient pas que c'était impossible, alors ils l'ont fait" - Marc Twain
Si la réponse répond à votre besoin, votre vote nous encouragera.
Dans le cas ou la réponse mérite, à vos yeux, un , nous faire partager la raison de ce vote, pourrait nous permettre de nous améliorer.
jfontaine est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 14h45   #5
Invité régulier
 
Inscription : décembre 2010
Messages : 36
Détails du profil
Informations forums :
Inscription : décembre 2010
Messages : 36
Points : 7
Points : 7
Alors là pour le coup c'est un mystère. Le programme lance bien le bloc note mais rien n'apparait dedans.
Est ce que ca ne serait pas lié à un problème de sécurité qui empeche ce genre de commande ?

Personne n'a une idée car ca me serait bien utilie de pouvoir utiliser cette commande.

Merci
F.Salenko est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 15h10   #6
Responsable Access
 
Avatar de Arkham46
 
Inscription : septembre 2003
Messages : 4 300
Détails du profil
Informations personnelles :
Localisation : France, Loiret (Centre)

Informations forums :
Inscription : septembre 2003
Messages : 4 300
Points : 7 939
Points : 7 939
bjr,

c'est probable que si tu es sous vista ou seven il y ait un blocage de sécurité pour envoyer des touches à une autre application

à tout hasard, tu peux essayer avec WScript :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
Sub Notepad()
 
Dim txtName As String
Dim notepadID
Dim WshShell As Object
 
Set WshShell = CreateObject("WScript.Shell")
 
notepadID = Shell("NOTEPAD.EXE " & txtName, 1)
AppActivate notepadID, True
 
WshShell.SendKeys "a" & "{ENTER}", True
 
End Sub
__________________
Assistant de création/modification de rubans Office
Utilisez en VBA les librairies graphiques GDI, GDI+ et openGL

Blog Office Mon Site DVP
Arkham46 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 16h04   #7
Responsable Visual Basic
 
Avatar de bbil
 
Inscription : juin 2003
Messages : 11 773
Détails du profil
Informations personnelles :
Âge : 45
Localisation : France, Ariège (Midi Pyrénées)

Informations forums :
Inscription : juin 2003
Messages : 11 773
Points : 16 847
Points : 16 847
Envoyer un message via Skype™ à bbil
de plus le sendkey est rarement (jamais ?) la bonne solution à un problème ... dans ton cas il suffit d'écrire dans un fichier texte et puis l'ouvrir avec NotePad. ..

dans d'autres cas il faut adapter en étudiant le fonctionnement du programme à utiliser ...
bbil est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 12/08/2011, 16h41   #8
Expert Confirmé
 
Avatar de patricktoulon
 
patrick
Inscription : avril 2009
Messages : 1 829
Détails du profil
Informations personnelles :
Nom : patrick
Âge : 42
Localisation : France, Var (Provence Alpes Côte d'Azur)

Informations professionnelles :
Secteur : Bâtiment

Informations forums :
Inscription : avril 2009
Messages : 1 829
Points : 2 857
Points : 2 857
Envoyer un message via MSN à patricktoulon
Par défaut heu

bonjour

bonjour


bill t'a donné une solution qui me semble bien

maintenant si tu veux continuer avec senkey

peut être qu'il faudrais mettre le focus la fenêtre "notpad"
c'est possible que sa soit ça

pour cela il te faudra utiliser les apis le "setfocus" de la (user32.dll)

mais comme je te l'ai déjà dis la solution de bill est beaucoup mieux


tu a une approche ici
__________________
mes fichiers dans les contributions:
mon formulaire mail avec CDO en vba et mon formulaire mail avec CDO en vbs dans un HTA
mon nouveau mouse in out pour les boutons dans un userform
mon addin pour prendre un cliché de selection de cellules

si ton problème est résolu n'oublie pas de pointer :résolu:ça peut servir aux autres
et n'oublie pas de voter
patricktoulon est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h17.


 
 
 
 
Partenaires

Hébergement Web