SAP et Excel VBA

Bonjour à toutes et à tous,

j'ai 2 questions concernant les liens entre excel et SAP.

J'ai trouvé sur le net un petit bout de code sur le net afin de tenter d'ouvrir SAP en partant d'une macro qui est ci dessous.

Il lance l'ouverture mais pas complètement, à un moment il faudrait un double clic sur la version de SAP mais je ne sais pas faire.

Ensuite j'ai trouvé comment faire un script sur SAP pour automatiser la transaction, les filtres et l'export mais je ne sais pas comment lancer le script depuis Excel.
Pourriez vous m'aider sur ces 2 points si possible :

1_ Ouverture SAP avec macro

2_ Lancer un script depuis une macro.

Merci d'avance pour votre aide

Sub macro2()
Dim sapConn As Object
Set objshell = CreateObject("WScript.Shell")
Set objapp = objshell.Exec(Environ("PROGRAMFILES") & "\SAP\FrontEnd\SAPgui\saplogon.exe")
Set sapConn = CreateObject("SAP.Functions") 'Create ActiveX object
sapConn.Connection.ApplicationServer = Environ("PROGRAMFILES") & "\SAP\FrontEnd\SAPgui\saplogon.exe"
sapConn.Connection.client = "100" ' only read access
sapConn.Connection.user = Environ("USERNAME")
sapConn.Connection.Password = "PASSWORD"
sapConn.Connection.System = ".FCS Europe: ECC Production (FC1)"
sapConn.Connection.System = "sapfc1.app.corp"  'c'est ici qu'il que j'ai une fenêtre et je dois double cliquer sur FC1 
sapConn.Connection.System = ".VCM Global Production"
sapConn.Connection.Language = "FR"
If sapConn.Connection.logon(0, False) <> True Then 'Try Logon
MsgBox "Cannot Log on to SAP"
getSAPProjectHours = False
Else: sapConn.Connection.Logoff
End If
Set sapConn = Nothing
End Sub

Bonjour

pour ceux que cela intéresse, j'ai la solution.

Sur SAP je me suis rendu sur la transaction souhaitée et j'ai créé un raccourci que j'ai mis dans un dossier sur le réseau

​Le code est le suivant :

On Error GoTo OuvertureFichierErreur

Dim MonApplication As Object

Dim MonFichier As String

Set MonApplication = CreateObject("Shell.Application")

MonFichier = "lien vers le raccourci créé" 'à remplacer par votre raccourci

MonApplication.Open (MonFichier)

Set MonApplication = Nothing

Exit Sub

OuvertureFichierErreur:

Set MonApplication = Nothing

MsgBox "Erreur lors de l'ouverture de fichier..."

End Sub

ensuite j'ai créé un script et tout fonctionne.

Bonjour romubzh35

Si vous avez le client d'installé sur le PC, il est possible d'utiliser simplement

Sub CréerCommande()
  Dim sDevis As String, sCde As String, sDateCde As String, sTmp As String
  ' Variables objet pour SAP
  Dim App, Connection, Session, Wscript
  Dim SapGui As Object
  ' Minimiser cette fenêtre
  ThisWorkbook.Windows.Application.WindowState = xlMinimized
  FlgOk = False
  ' Suite pour SAP
  If Not IsObject(App) Then
    Set SapGui = GetObject("SAPGUI")
    Set App = SapGui.GetScriptingEngine
  End If
  If Not IsObject(Connection) Then
    Set Connection = App.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 App, "on"
  End If
  Session.findById("wnd[0]/tbar[0]/okcd").Text = "VA01"
  Session.findById("wnd[0]").sendVKey 0
' Etc....

Si vous avez trouvé, tant mieux

En revanche, je vous invite à lire la charte du forum [A LIRE AVANT DE POSTER]
qui vous aidera dans vos demandes et réponses sur ce forum et notamment :

  • Ne postez pas la même question sur un autre forum pour éviter de faire perdre bêtement du temps aux membres sur un problème qui peut être déjà résolu sur l'autre forum. L'inverse est également valable, si vous avez déjà posé votre question sur un autre forum, ne créez pas un doublon sur ce forum (à moins d'avoir clôturé le sujet sur l'autre forum).

Je clôture donc le sujet ici

Merci de votre compréhension

Rechercher des sujets similaires à "sap vba"