Bonjour,
je suis en train d'essayer d'automatiser une série d'opérations entre SAP et Office.
Comme je n'ai pas les droits pour créer des extractions ou d'accéder en ODBC ... j'essaie de me débrouiller comme je peux
J'ai une liste sous forme de tableau SAP que je voudrais récupérer en VBA ( a terme sous Access, mais je fais mes tests sous Excel , ça me semble plus simple ) ...
Sachant que la structure est toujours la même, ce que je veux faire :
1 - passer le tableau SAP dans le presse papier => je me positionne sur une des cellules => ctrl-y / ctrl-a / ctrl-c ( ctrl-y pour sélectionner toutes les données, même non affichées avec l'ascenseur)
2 - je parcours le presse papier et splitte les données pour me retorouver avec un tableau que je peux traiter.
Le point 2 est OK, ça passe , mais pour le point 1 j'ai essayé de faire un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 ' "Modifier avis : liste des avis" , est le titre de la fenêtre a cibler AppActivate "Modifier avis : liste des avis", True 'SendKeys "{TAB}", True SendKeys "^y", True SendKeys "^a", True SendKeys "^c", True DataObj.GetFromClipboard sListe = DataObj.GetText(1)
Mais si je ne suis pas positionné sur la liste en tableau (en l'activant avec un clic avant) , la copie n'est pas effectuée et le presse papier ne comporte pas les données
je mets intentionnellement avec un "PutInClipboard" une valeur de base (une suite de caractères) dans le presse-papier pour controler si c'est bien les données qui sont chargées et non ces caratères.
Ce que je voudrais c'est pouvoir activer par VBA le "tableau" des données, il me semble qu'en VB6.0 on pouvais utiliser les APIs pour le faire mais je ne retrouve pas le code
Si quelqu'un a une idée ?
Merci d'avance
Olivier
Partager