Bonsoir le forum,

Voici ma question

J'ai un script VBS existant, je souhaiterais le lancer dans une macro VBA.

j'ai essayé de créer une macro qui permet de télécharger une fichier EXCEL à partir SAP :

1) j'ai utilisé une option sous SAP que permet d'enregistrer sous un script VBS . ça marche le script VBS est exucutable avec succès

2) j'ai essayé de exécuter ce script sous VBA afin de d'améliorer la fonctionnalité de script quoique le résultat n'est pas souhaitable , un message " utilisation incorrecte de la propriété" est affiché

ci-joint le main code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
Sub SapExport()
 
 
If Not IsObject(Application) Then
   Set SapGuiAuto = GetObject("SAPGUI")
   Set Application = SapGuiAuto.GetScriptingEngine
End If
If Not IsObject(Connection) Then
   Set Connection = Application.Children(0)
End If
If Not IsObject(session) Then
   Set session = Connection.Children(0)
End If
If IsObject(WScript) Then
   WScript.ConnectObject session, "on"
   WScript.ConnectObject Application, "on"
End If
session.findById("wnd[0]").maximize
session.findById("wnd[0]/tbar[0]/okcd").Text = "lx03"
session.findById("wnd[0]").sendVKey 0
session.findById("wnd[0]/usr/chkPMITB").Selected = True
session.findById("wnd[0]/usr/ctxtS1_LGNUM").Text = "TN0"
session.findById("wnd[0]/usr/ctxtS1_LGTYP-LOW").Text = "061"
session.findById("wnd[0]/usr/ctxtS1_LGTYP-HIGH").Text = "062"
session.findById("wnd[0]/usr/ctxtP_VARI").SetFocus
session.findById("wnd[0]/usr/ctxtP_VARI").caretPosition = 0
session.findById("wnd[0]/tbar[1]/btn[8]").press
session.findById("wnd[0]/tbar[1]/btn[16]").press
session.findById("wnd[1]/tbar[0]/btn[0]").press
session.findById("wnd[1]/usr/ctxtDY_FILENAME").Text = "LX03.XLSX"
session.findById("wnd[1]/usr/ctxtDY_FILENAME").caretPosition = 9
session.findById("wnd[1]/tbar[0]/btn[0]").press
session.findById("wnd[1]/tbar[0]/btn[11]").press
 
 
End Sub