OVH Cloud OVH Cloud

Pas de solution encore :-))))

3 réponses
Avatar
Daniel
Bonjour à tous
Avec cette macro je veut ouvrire un autre programme
(il me permet de copier long.latitude de l'endroit ou je me trouve)
mais elle bloc sur 6 ligne " AppActivate MyAppID "
Je reste sur le programme "nRoute" et plus rein ,je doit Déboger
Pourquoi elle ne fini pas la procédure.
Le programme (enRoute)est toujours ouvert en arrière plan.

Ci je le fait manuellement cela fonctionne.

MERCI de votre expertise

Dim MyAppID

Sub Ouvrirnroute()
MyAppID = Shell("C:\Garmin\nRoute\nRoute.exe", 1)
Application.Wait (Now + TimeValue ("00:00:05"))
'pour une pause de 3 secondes
AppActivate MyAppID '_________?????????bloc ici :-((
Call test
End Sub

Sub test()
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub

3 réponses

Avatar
MichDenis
Bonsoir Daniel,

Je ne connais pas Nroute.exe, ni ce que ton code doit faire, ... mais de cette façon, ton code devrait s'exécuter !!!

'---------------------------------
Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue("00:00:03"))
test MyAppID 'J'ai modifié cette ligne
End Sub

'---------------------------------
Sub test(ByVal MyAppID As Long)
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub
'---------------------------------


Salutations!






"Daniel" a écrit dans le message de news: 6tIYd.90143$
Bonjour à tous
Avec cette macro je veut ouvrire un autre programme
(il me permet de copier long.latitude de l'endroit ou je me trouve)
mais elle bloc sur 6 ligne " AppActivate MyAppID "
Je reste sur le programme "nRoute" et plus rein ,je doit Déboger
Pourquoi elle ne fini pas la procédure.
Le programme (enRoute)est toujours ouvert en arrière plan.

Ci je le fait manuellement cela fonctionne.

MERCI de votre expertise

Dim MyAppID

Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue ("00:00:05"))
'pour une pause de 3 secondes
AppActivate MyAppID '_________?????????bloc ici :-((
Call test
End Sub

Sub test()
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub
Avatar
Daniel
Bonsoir MichDenis
NRoute es un programme qui me localise avec un GPS,
en me donnant ma location (Longitude/Latitude)
Si je fait la procédure manuellement cela va.
Procédure: 'ALT-TAB pour basculer sur le programme nRoute
' Envoie la combinaison CTRL+w ouvre une fenêtre dans
nRoute
' Envoie la combinaison CTRL+tab
' Envoie la combinaison CTRL+tab
' Envoie la combinaison CTRL+c copie sur presse-papier
' Envoie la combinaison escape pour fermé la fenêtre
'ALT-TAB pour basculer sur Excel et aprés coller le
presse papier dans la cellule active.

Avec les changement que tu ma proposer je bloc
AppActivate MyAppID, True ' Active nRoute.exe
et je reste sur le programme nRoute :-((

Dans la fenêtre de Visual Basic de Débogage il est écrie:
Erreur d'exécution "5":
Argument ou appel de procédure incorrect

Merci pour t'on aide

"MichDenis" a écrit dans le message de news:

Bonsoir Daniel,

Je ne connais pas Nroute.exe, ni ce que ton code doit faire, ... mais de
cette façon, ton code devrait s'exécuter !!!

'---------------------------------
Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue("00:00:03"))
test MyAppID 'J'ai modifié cette ligne
End Sub

'---------------------------------
Sub test(ByVal MyAppID As Long)
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub
'---------------------------------


Salutations!






"Daniel" a écrit dans le message de news:
6tIYd.90143$
Bonjour à tous
Avec cette macro je veut ouvrire un autre programme
(il me permet de copier long.latitude de l'endroit ou je me trouve)
mais elle bloc sur 6 ligne " AppActivate MyAppID "
Je reste sur le programme "nRoute" et plus rein ,je doit Déboger
Pourquoi elle ne fini pas la procédure.
Le programme (enRoute)est toujours ouvert en arrière plan.

Ci je le fait manuellement cela fonctionne.

MERCI de votre expertise

Dim MyAppID

Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue ("00:00:05"))
'pour une pause de 3 secondes
AppActivate MyAppID '_________?????????bloc ici :-((
Call test
End Sub

Sub test()
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub





Avatar
LSteph
Bonjour,

Sauf erreur de ma part , il y avait peut être juste une faute de frappe
dans la solution proposée
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
(ceci envoie tab et non ctrl+tab)



Sendkeys "^{TAB}", true ' Envoie la combinaison CTRL+tab


....en ajoutant: , true
à chaque frappe le programme marquera (si besoin est pour vérifier)
l'attente d'execution de chaque touche à l'écran

Pour alt+ Tab c'est:

Sendkeys "%{TAB}", true

'lSteph

"Daniel" a écrit dans le message de news:
1HRYd.104833$
Bonsoir MichDenis
NRoute es un programme qui me localise avec un GPS,
en me donnant ma location (Longitude/Latitude)
Si je fait la procédure manuellement cela va.
Procédure: 'ALT-TAB pour basculer sur le programme nRoute
' Envoie la combinaison CTRL+w ouvre une fenêtre dans
nRoute
' Envoie la combinaison CTRL+tab
' Envoie la combinaison CTRL+tab
' Envoie la combinaison CTRL+c copie sur presse-papier
' Envoie la combinaison escape pour fermé la fenêtre
'ALT-TAB pour basculer sur Excel et aprés coller le
presse papier dans la cellule active.

Avec les changement que tu ma proposer je bloc
AppActivate MyAppID, True ' Active nRoute.exe
et je reste sur le programme nRoute :-((

Dans la fenêtre de Visual Basic de Débogage il est écrie:
Erreur d'exécution "5":
Argument ou appel de procédure incorrect

Merci pour t'on aide

"MichDenis" a écrit dans le message de news:

Bonsoir Daniel,

Je ne connais pas Nroute.exe, ni ce que ton code doit faire, ... mais de
cette façon, ton code devrait s'exécuter !!!

'---------------------------------
Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue("00:00:03"))
test MyAppID 'J'ai modifié cette ligne
End Sub

'---------------------------------
Sub test(ByVal MyAppID As Long)
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub
'---------------------------------


Salutations!






"Daniel" a écrit dans le message de news:
6tIYd.90143$
Bonjour à tous
Avec cette macro je veut ouvrire un autre programme
(il me permet de copier long.latitude de l'endroit ou je me trouve)
mais elle bloc sur 6 ligne " AppActivate MyAppID "
Je reste sur le programme "nRoute" et plus rein ,je doit Déboger
Pourquoi elle ne fini pas la procédure.
Le programme (enRoute)est toujours ouvert en arrière plan.

Ci je le fait manuellement cela fonctionne.

MERCI de votre expertise

Dim MyAppID

Sub Ouvrirnroute()
MyAppID = Shell("C:GarminnRoutenRoute.exe", 1)
Application.Wait (Now + TimeValue ("00:00:05"))
'pour une pause de 3 secondes
AppActivate MyAppID '_________?????????bloc ici :-((
Call test
End Sub

Sub test()
AppActivate MyAppID, True ' Active nRoute.exe
SendKeys "^w" ' Envoie la combinaison CTRL+w ouvre une fenêtre
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "{tab}" ' Envoie la combinaison CTRL+tab
SendKeys "^C" ' Envoie la combinaison CTRL+c copie sur presse-papier
SendKeys "{ESC}", True ' Envoie la combinaison escape pour fermé la
fenêtre
Dim MyData As DataObject
Set MyData = New DataObject
MyData.GetFromClipboard 'Récupérer le Presse-papier
Sheets("Feuille_insp").Select
Range("H15").Select
Selection.ClearContents
Sheets("Feuille_insp").Range("h15").Select
ActiveSheet.Paste
Application.ScreenUpdating = True
Sheets("Feuille_insp").Select
Range("h15").Select
End Sub