Coller dans une autre appli (débutant)
Résolu
Patrack33
Messages postés
10
Date d'inscription
Statut
Membre
Dernière intervention
-
Patrack33 Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
Patrack33 Messages postés 10 Date d'inscription Statut Membre Dernière intervention -
A voir également:
- Coller dans une autre appli (débutant)
- Appli miroir - Guide
- Comment desinstaller une appli sur pc - Guide
- Appli horloge - Télécharger - Guide Android
- Historique copier coller - Guide
- Appli traduction photo - Guide
6 réponses
Bonjour,
Je pense qu'il faut tout simplement essayer avec V en minuscule :
SendKeys "^v"
A tester
A+
Je pense qu'il faut tout simplement essayer avec V en minuscule :
SendKeys "^v"
A tester
A+
L'application ne fait pas partie de la suite office , est-ce que ça expliquerait pourquoi le ctrl V ne fonctionne pas ?
Bonjour,
Moi j'ai fait le test avec Word et cela fonctionne.
Est-ce que la manip "à la main" fonctionne ?
Peut-être que le problème vient du fait qu'il faut donner le focus à l'autre application
et que dans cette autre application il faut que le focus soit sur un champ de saisie.
Dans ce cas cela dépasse mes compétences car pour donner précisément le focus à une autre application, il faut probablement utiliser les API Windows sans doute la bibliothèque "user32"
Moi j'ai fait le test avec Word et cela fonctionne.
Est-ce que la manip "à la main" fonctionne ?
Peut-être que le problème vient du fait qu'il faut donner le focus à l'autre application
et que dans cette autre application il faut que le focus soit sur un champ de saisie.
Dans ce cas cela dépasse mes compétences car pour donner précisément le focus à une autre application, il faut probablement utiliser les API Windows sans doute la bibliothèque "user32"
A la main ça fonctionne impec.
Si je comprend bien , ce n'est pas parceque ma fenêtre est au premier plan que j'ai le focus dessus.
J'ai lu des truc dessus , mais encore une fois , je suis complètement néophyte.
J'esperais pouvoir automatiser mes action répétitives clavier "simplement"
J'ai lu qu'il fallait trouver le "handle" de l'application.
J'ai entendu parler de keyevent aussi.
J'ai lu ça sur un autre forum , ça a l'air de ressembler a ce que je veux faire , mais la syntaxe n'est pas décrite et donc il me manque le moyen d'y arriver.
https://www.developpez.net/forums/d122447/environnements-developpement/delphi/api-com-sdks/simuler-ctrlpv/
Que faire ?
Choix 1 : creuser cette histoire de focus , c'est pas si compliquer et je touche au but ?
Choix 2 : changer de méthode ,le vba est compliquer pour l'usage que je souhaite en faire , il existe des méthodes plus simple ?
Choix 3 : l'appel a un ami (maman les ordinateurs sont méchants avec moi).
Si je comprend bien , ce n'est pas parceque ma fenêtre est au premier plan que j'ai le focus dessus.
J'ai lu des truc dessus , mais encore une fois , je suis complètement néophyte.
J'esperais pouvoir automatiser mes action répétitives clavier "simplement"
J'ai lu qu'il fallait trouver le "handle" de l'application.
J'ai entendu parler de keyevent aussi.
J'ai lu ça sur un autre forum , ça a l'air de ressembler a ce que je veux faire , mais la syntaxe n'est pas décrite et donc il me manque le moyen d'y arriver.
https://www.developpez.net/forums/d122447/environnements-developpement/delphi/api-com-sdks/simuler-ctrlpv/
Que faire ?
Choix 1 : creuser cette histoire de focus , c'est pas si compliquer et je touche au but ?
Choix 2 : changer de méthode ,le vba est compliquer pour l'usage que je souhaite en faire , il existe des méthodes plus simple ?
Choix 3 : l'appel a un ami (maman les ordinateurs sont méchants avec moi).
Malheureusement c'est un logiciel développé pour ma boîte , je ne sais pas s'il est géré par vba , (il y a une procédure pour le savoir ?).
On m'a dit que ce serait une base accès géré en java , mais c'est a mettre au conditionnel .
Et déjà le vba j'ai du mal , alors le java , ....
On m'a dit que ce serait une base accès géré en java , mais c'est a mettre au conditionnel .
Et déjà le vba j'ai du mal , alors le java , ....
Bon.
Normalement, une base Access devrait facilement être pilotable par VBA depuis Excel.
Malheureusement, je n'ai jamais tenté ce genre de manipulations...
Alors.
Tu parlais tout à l'heure de récupérer le handle de ton appli.
En voici le moyen :
- Sources :
Sources
- Code :
- fichier exemple :
Exemple sous Excel
Normalement, une base Access devrait facilement être pilotable par VBA depuis Excel.
Malheureusement, je n'ai jamais tenté ce genre de manipulations...
Alors.
Tu parlais tout à l'heure de récupérer le handle de ton appli.
En voici le moyen :
- Sources :
Sources
- Code :
Private Declare Function GetWindow Lib "user32" (ByVal hWnd As Long, ByVal wCmd As Long) As Long Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long Private Declare Function IsWindowVisible Lib "user32" (ByVal hWnd As Long) As Long Private Declare Function GetDesktopWindow Lib "user32" () As Long Private Sub CommandButton1_Click() Dim hWnd As Long Dim Titre_Fenetre As String * 255 Dim TitreFen As String Dim j As Long ListBox1.Clear ' On vide la listbox hWnd = GetWindow(GetDesktopWindow(), 5) Do While (Not IsNull(hWnd)) And (hWnd <> 0) 'Passe en revue chaque fenêtre Titre_Fenetre = String(255, 0) 'Formate la chaine destinée à accueillir le titre de la fenêtre ret = GetWindowText(hWnd, Titre_Fenetre, 255) 'récupère le titre de la fenêtre et le nombre de caractères de ce titre If Titre_Fenetre <> String(255, 0) Then 'Si le titre n'est pas vide If IsWindowVisible(hWnd) = 1 Then 'Pour ne tenir compte que des fenêtres visibles (regardez ce que ça donne en retirant cette condition) TitreFen = Titre_Fenetre 'récupère le titre de la fenêtre TitreFen = Left(TitreFen, ret) 'sans les caractères supplémentaires finaux j = j + 1 If Val(j) < 10 Then j = "0" & j ListBox1.AddItem TitreFen & " [ " & hWnd & " ]" 'stocke le tout dans une listbox End If End If hWnd = GetWindow(hWnd, 2) 'cherche la fenêtre suivant Loop End Sub
- fichier exemple :
Exemple sous Excel
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour à tous,
S'il s'agit de faire des Inserts dans une base de données Access, le meilleur moyen est d'utilisé une connection ODBC. Ca se pilote très bien depuis Excel.
Il faut utiliser le driver OLEDB adéquat (voir sur ce site). On trouve sur la toile assez d'exemple de connexion entre Excel et Access.
Ensuite il faut connaître le modèle de la base pour faire les Inserts là où ça va bien ^^
;0)
S'il s'agit de faire des Inserts dans une base de données Access, le meilleur moyen est d'utilisé une connection ODBC. Ca se pilote très bien depuis Excel.
Il faut utiliser le driver OLEDB adéquat (voir sur ce site). On trouve sur la toile assez d'exemple de connexion entre Excel et Access.
Ensuite il faut connaître le modèle de la base pour faire les Inserts là où ça va bien ^^
;0)
ce n'est pas lié à la minuscule ...
une autre piste ?