AW: SAP Logon über VBA
18.08.2020 09:14:58
MCO
Hallo Ronny!
Ich hab seinerzeit selbst auch mal den Versuch gemacht, den LOGon aus xls herauszu machen, feldabhängig sollte dann auch die Transaktion aufgerufen und gefüllt werden.
Es erwies sich als wenig praxistauglich, weil immer ein neuer Logon erzeugt wird, die Verifikation geht jedesmal verloren. :-(
Der Code sollte soweit klar kommentiert sein.
Viel Erfolg!
Gruß, MCO
Private Sub Call_SAP()
Dim command As String
Dim SAP_Dir As String
Dim SapSys As String 'SAP-System Name
SapSys = "PF1" 'hier Systemnamen eintragen oder aus einer Zelle auslesen
'64bit check
If Dir("C:\Program Files (x86)\sap\frontEnd\saPgui", vbDirectory) vbNullString Then
SAP_Dir = "C:\Program Files (x86)\SAP\FrontEnd\SAPgui\"
Else
SAP_Dir = "C:Program FilesSAPFrontEndSAPgui"
End If
Select Case ActiveCell.Column
Case col_Auftrag
If InStr(ActiveCell, "/") > 0 Then 'mit Slash
Anwendung = "va03"
feld = " VBAK-VBELN="
wert = Split(ActiveCell, "/")(0)
Else
If ActiveCell 40000000 Then 'Kundenauftrag
Anwendung = "va03"
feld = " VBAK-VBELN="
End If
wert = ActiveCell
End If
Case col_Qualitätsmeldung 'QM
Anwendung = "QM03"
feld = " RIWO00-QMNUM="
wert = ActiveCell
Case col_Qualitätsauftrag 'QA
Anwendung = "kkf2"
feld = " COAS-AUFNR="
wert = ActiveCell
End Select
Anwendung = "va03"
feld = " VBAK-VBELN="
command = """" & SAP_Dir & "sapshcut.exe"" -system=" & SapSys & " -client=001 -user=" & _
Environ$("Username") & " -language=DE -Command=""*" & Anwendung & feld & wert & ";"""
Shell command
End Sub