Macro avec autre logiciel
Lentz
-
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
eriiic Messages postés 25847 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour,
Pas de fichier exemple, c'est une question pour ma connaissance personnelle (pour le moment)
Je voulais savoir si c'était possible de faire une macro en exportant des fichiers sur excel via un ERP (SAP)
Merci d'avance
Pas de fichier exemple, c'est une question pour ma connaissance personnelle (pour le moment)
Je voulais savoir si c'était possible de faire une macro en exportant des fichiers sur excel via un ERP (SAP)
Merci d'avance
A voir également:
- Macro avec autre logiciel
- Logiciel - Guide
- Money logiciel - Télécharger - Comptabilité & Facturation
- Ce petit logiciel gratuit optimise complètement votre PC en quelques clics - Guide
- Telecharger macro convertir chiffre en lettre excel - Télécharger - Tableur
- Ce logiciel gratuit répare automatiquement votre PC quand Windows a des problèmes - Guide
5 réponses
bonjour
Si tu veux "exporter des fichiers sur excel" il faut faire la macro dans l'ERP.
Plus exactement dans l'ERP, tu fais un export dans un fichier (CSV par exemple) puis dans excel tu peux faire un import du fichier avec une macro de traitement.
Si tu veux "exporter des fichiers sur excel" il faut faire la macro dans l'ERP.
Plus exactement dans l'ERP, tu fais un export dans un fichier (CSV par exemple) puis dans excel tu peux faire un import du fichier avec une macro de traitement.
Bonjour tout le monde,
Les codes touches sont sur Internet :
http://users.skynet.be/micdub/vba6.htm#touche_code
Les codes touches sont sur Internet :
http://users.skynet.be/micdub/vba6.htm#touche_code
Malgré de nombreux test
"Argument ou appel de procédure incorrect"
S'affiche lors de l'éxécution de la macro !
"Argument ou appel de procédure incorrect"
S'affiche lors de l'éxécution de la macro !
ce que j'ai écris est simple
Sachant que mes tests se portaient sur le changement de "SAP logon" que j'ai beaucoup modifié!
Et au préalable j'ai préparer SAP qui est prêt à se faire exporter !
Sub exportSAP()
' 'codes à envoyer à SAP
AppActivate "SAP logon"
SendKeys "^+{F7}"
SendKeys "{enter 3}", True
AppActivate "Classeur5.xls"
End Sub
Sachant que mes tests se portaient sur le changement de "SAP logon" que j'ai beaucoup modifié!
Et au préalable j'ai préparer SAP qui est prêt à se faire exporter !
Re-
J'ai trouvé sur le net cette sub qui liste le titre de toutes les fenêtres ouvertes, toutes applications confondues. Cela pourrait également servir à déterminer qu'elle fenêtre activer avec AppActivate...
Cordialement,
Franck P
J'ai trouvé sur le net cette sub qui liste le titre de toutes les fenêtres ouvertes, toutes applications confondues. Cela pourrait également servir à déterminer qu'elle fenêtre activer avec AppActivate...
Option Explicit
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
Sub ListeFenetresOuvertes()
Dim hWnd As Long
Dim Titre_Fenetre As String * 255
Dim TitreFen As String
Dim ret As String
Dim j As Long
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
Sheets("Feuil1").Range("A" & j) = TitreFen
Sheets("Feuil1").Range("B" & j + 1) = Titre_Fenetre
j = j + 1
End If
End If
hWnd = GetWindow(hWnd, 2) 'cherche la fenêtre suivant
Loop
End Sub
Cordialement,
Franck P
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Merci pour vos messages mais j'y connait pas grand chose en VBa et là ça dépasse vraiment mes petites compétences...
Ce n'est pas parce que tu débutes qu'il faut laisser tomber...
On te demande de continuer ce sujet pour réussir à réaliser ce que beaucoup d'autres n'ont pas su faire.
Regarde sur Internet, ce genre de question s'est posée plusieurs fois sans solutions... Si, grâce à ton aide, Eriiic ou moi (voir les 2) trouvons la méthode se sera ça de gagné pour toi et toute la communauté...
Donc essaye à nouveau, dis nous ou ça coince et ensemble on va peut être y parvenir...
Je dis "peut être" car SAP est une rude machine dure à percer...........
Persévérons, je suis persuadé que cela vaut le coup.
ps : si je disposais de SAP et pouvais tester moi même, je ne te demanderais pas de rester mais là...
On te demande de continuer ce sujet pour réussir à réaliser ce que beaucoup d'autres n'ont pas su faire.
Regarde sur Internet, ce genre de question s'est posée plusieurs fois sans solutions... Si, grâce à ton aide, Eriiic ou moi (voir les 2) trouvons la méthode se sera ça de gagné pour toi et toute la communauté...
Donc essaye à nouveau, dis nous ou ça coince et ensemble on va peut être y parvenir...
Je dis "peut être" car SAP est une rude machine dure à percer...........
Persévérons, je suis persuadé que cela vaut le coup.
ps : si je disposais de SAP et pouvais tester moi même, je ne te demanderais pas de rester mais là...
Re,
Pour activer la fenetre il faut en paramètre soit :
-prendre le début de la chaine (autant de caractères que tu veux, 2 ou 10 ou ...) affichée dans la barre de titre de la fenetre.
- ou, si cette partie n'est pas constante ou suffisament discriminante, prendre ce qu'il y a après le tiret - , mais là il faut toute la chaine jusqu'au bout.
Si avec ces 2 possibilités tu n'arrives pas à trouver une partie constante suffisament significative, il reste la possibilité dans lancer SAP par excel et là on aura le handle de la fenetre sans ambiguité. Mais c'est plus contraignant...
eric
Pour activer la fenetre il faut en paramètre soit :
-prendre le début de la chaine (autant de caractères que tu veux, 2 ou 10 ou ...) affichée dans la barre de titre de la fenetre.
- ou, si cette partie n'est pas constante ou suffisament discriminante, prendre ce qu'il y a après le tiret - , mais là il faut toute la chaine jusqu'au bout.
Si avec ces 2 possibilités tu n'arrives pas à trouver une partie constante suffisament significative, il reste la possibilité dans lancer SAP par excel et là on aura le handle de la fenetre sans ambiguité. Mais c'est plus contraignant...
eric
Là c'est plus du coté des possibilités de SAP qu'il faudrait voir.
Mais SAP est un monument tellement énorme qu'il faudrait peut-être chercher un forum qui lui est dédié.
Attend un peu mais très peu de spécialistes de SAP passent par ici...
eric
Je confirme,
Merci de ton aide, du coup via excel je ne peux rien faire !
Il y a peut-être des API (ou autre) SAP qui permettent d'interroger la base SAP...
Mais la question pour l'instant est coté SAP, pas coté excel
eric
Tu vas passer un temps fou à trouver ça.
Si c'est possible et que demain SAP change ses protocoles plus rien ne marchera et tout sera à refaire.
Donc je remettrai cette idée dans ma poche avec mon mouchoir par dessus, et je ferai une macro qui travaille avec l'export xls de SAP ;-)
eric