SAP-Logon mit VBA

Guten morgen, allerseits!

Ich habe auf der Suche für die Lösung in den letzten Tagen, aber ich habe wirklich nicht gelungen: ich versuche ein vba-code ein: 1-melden Sie sich in SAP -, 2-führen Sie einige Transaktionen, 3-export nach excel.

Aber auch die "log-in SAP" - Teil ist nicht OK!

Ich habe versucht, mehrere codes, die man unten ÖFFNET sich das SAP-logon-Bildschirm, aber nicht füllen Sie alle Felder aus. Ich Verwendet CreateObject("Sapgui.ScriptingCtrl.1"):

Sub Entrar_SAP()

If Not IsObject(SAPguiApp) Then
    Set SAPguiApp = CreateObject("Sapgui.ScriptingCtrl.1")
End If
If Not IsObject(Connection) Then
    Set Connection = SAPguiApp.OpenConnection("xxxxxxx)", True)
End If
If Not IsObject(session) Then
    Set session = Connection.Children(0)
End If
session.findById("wnd[0]/usr/txtRSYST-MANDT").Text = "100"     
session.findById("wnd[0]/usr/txtRSYST-BNAME").Text = "user"     
session.findById("wnd[0]/usr/pwdRSYST-BCODE").Text = "pass" 
session.findById("wnd[0]/usr/txtRSYST-LANGU").Text = "PT" 
session.findById("wnd[0]/usr/txtRSYST-LANGU").SetFocus     
session.findById("wnd[0]/usr/txtRSYST-LANGU").caretPosition = 2 
session.findById("wnd[0]").sendVKey 0

Anderen, mit CreateObject("SAP.Functions") zeigte: "RFC-Fehler empfangen. Keine RFC-Berechtigung für den Funktionsbaustein RFC-PING"

der code ist:

'Declaration
Dim objBAPIControl As Object 'Function Control (Collective object)
Dim sapConnection As Object 'Connection object
Set objBAPIControl = CreateObject("SAP.Functions")
Set sapConnection = objBAPIControl.Connection
sapConnection.Client = "xxxxx" 
sapConnection.User = "xxxxxx"
sapConnection.Language = "PT" 
sapConnection.hostname = "xxxxx"
sapConnection.Password = "xxxxxxxx" 'Fake password         
sapConnection.SystemNumber = "4"
sapConnection.System = "xxxxxx)"
sapConnection.Logon 
If sapConnection.Logon(1, True) <> True Then
    MsgBox "No connection to R/3!"
Exit Sub 'End program 
End If

Kann mir bitte jemand helfen? Danke!!

  • Bitte Bearbeiten Sie die Frage so, dass der code lesbar ist. Lassen Sie eine Leerzeile vor dem code und Gedankenstrich jede Zeile um 4 Leerzeichen, mehr, wenn Sie wollen, um zu zeigen, eingerückten code-Blöcke.
  • Danke, ich habe gerade editiert!
Schreibe einen Kommentar