Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Automatischer SAP Logon über VBA

Forumthread: Automatischer SAP Logon über VBA

Automatischer SAP Logon über VBA
21.06.2004 13:34:41
Klaus
Hallo zusammen,
ich möchte mich mit Hilfe von VBA an ein SAP-System anmelden. Mit folgendem Code schaffe ich es immerhin daß SAP Logon-Fenster mit dem ausgefüllten Paßwort anzeigen zu lassen (dies geschieht bei der if-Abfrage).
Set R3 = CreateObject("SAP.Functions")
R3.Connection.System = "SAP System Produktion"
R3.Connection.client = "806"
R3.Connection.user = "USER1"
R3.Connection.password = "xyz"
...
If R3.Connection.logon(0, False) True Then
Exit Sub
End If
Wie schaffe ich es, daß dieses SAP logon-Fenster nicht hochkommt sondern im Hintergrund automatisch mit "OK" bestätigt wird?
Vielen Dank für Euere Hilfe!
Klaus
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Automatischer SAP Logon über VBA
andreas
hallo,
hattest du diese Frage kürzlich schon mal hier gestellt ?
wenn ja, sorry - weiss immer noch keinen rat -
wenn nein -
versuchs mal im www.abapforum.com
gruß
andreas e


http://www.fachforen.de
eine Linksammlung zu diversen fachforen
Anzeige
AW: Automatischer SAP Logon über VBA
GerdZ
Hallo Klaus,
ersetze das False in der Zeile
If R3.Connection.logon(0, False)  True Then
durch True
If R3.Connection.logon(0, True)  True Then
Dabei müssen im Connection-Objekt aber alle notwendigen Parameter bereits eingestellt sein. Der Parameter R3.Connection.System erscheint mir in Deinem Beispiel nicht richtig zu sein. Hier wird die SystemID erwartet. Gruß Gerd
Anzeige
AW: Automatischer SAP Logon über VBA
21.06.2004 14:00:32
Klaus
Hallo Andreas,
Du hast recht, ich habe die Frage schonmal gestellt und leider keine befriedigende Antwort bekommen. Im ABAP-Forum finde ich zwar den Code wie ich ihn bereits angegeben habe,
aber keinen Tip, wie ich das SAP-logon-Fenster im Hintergrund mit "OK" bestätigen kann.
Wer kann mir wirklich helfen?
Klaus
Anzeige
AW: Automatischer SAP Logon über VBA
21.06.2004 14:21:56
Torsten
Hallo Klaus,
das ist eine sehr interessante Möglichkeit.
Kannst Du mir den kompletten VBA-Code mal hier abbilden?
Herzlichen Dank im voraus.
Gruß
Torsten
;
Anzeige

Infobox / Tutorial

Automatischer SAP Logon mit VBA in Excel


Schritt-für-Schritt-Anleitung

Um eine automatische Anmeldung an einem SAP-System mit VBA in Excel zu realisieren, kannst du folgende Schritte befolgen:

  1. Öffne Excel und den VBA-Editor: Drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Erstelle ein neues Modul: Klicke mit der rechten Maustaste im Projektfenster auf "Einfügen" und wähle "Modul".

  3. Füge den folgenden VBA-Code ein:

    Sub SAP_Logon()
       Dim R3 As Object
       Set R3 = CreateObject("SAP.Functions")
    
       R3.Connection.System = "SAP System Produktion"
       R3.Connection.client = "806"
       R3.Connection.user = "USER1"
       R3.Connection.password = "xyz"
    
       If R3.Connection.logon(0, True) = True Then
           MsgBox "Anmeldung erfolgreich"
       Else
           MsgBox "Anmeldung fehlgeschlagen"
       End If
    End Sub
  4. Ersetze die Verbindungsparameter: Achte darauf, dass im Connection-Objekt alle notwendigen Parameter korrekt gesetzt sind. Dazu gehört die System-ID.

  5. Führe das Makro aus: Gehe zurück zu Excel und führe das Makro aus, um die Anmeldung zu testen.


Häufige Fehler und Lösungen

  • Fehler: Anmeldung fehlgeschlagen
    Lösung: Überprüfe, ob die System-ID und die Anmeldedaten korrekt sind. Achte auch darauf, dass der Parameter R3.Connection.System die richtige System-ID verwendet.

  • Fehler: SAP Logon-Fenster erscheint
    Lösung: Stelle sicher, dass der zweite Parameter in der logon-Methode auf True gesetzt ist, damit die Anmeldung im Hintergrund erfolgt.


Alternative Methoden

Eine alternative Methode zur automatischen Anmeldung könnte die Verwendung von Batch-Dateien oder PowerShell-Skripten sein, um den SAP Logon-Prozess zu automatisieren. Diese Methoden erfordern jedoch zusätzliche Kenntnisse in den jeweiligen Programmiersprachen.


Praktische Beispiele

Hier ist ein einfaches Beispiel, wie die Anmeldedaten dynamisch aus einer Excel-Tabelle gelesen werden können:

Sub SAP_Logon_Dynamic()
    Dim R3 As Object
    Dim ws As Worksheet
    Set ws = ThisWorkbook.Sheets("Sheet1") 'Ersetze mit Deinem Blattnamen
    Set R3 = CreateObject("SAP.Functions")

    R3.Connection.System = ws.Range("A1").Value ' System-ID aus Zelle A1
    R3.Connection.client = ws.Range("A2").Value ' Client aus Zelle A2
    R3.Connection.user = ws.Range("A3").Value ' Benutzername aus Zelle A3
    R3.Connection.password = ws.Range("A4").Value ' Passwort aus Zelle A4

    If R3.Connection.logon(0, True) = True Then
        MsgBox "Anmeldung erfolgreich"
    Else
        MsgBox "Anmeldung fehlgeschlagen"
    End If
End Sub

Tipps für Profis

  • Sicherheit: Vermeide es, Passwörter im Klartext zu speichern. Überlege, diese in einer geschützten Datei oder einer sicheren Datenbank zu speichern.
  • Fehlerbehandlung: Implementiere eine robuste Fehlerbehandlung, um unerwartete Probleme während der Anmeldung zu erkennen.
  • Dokumentation: Halte deinen Code gut dokumentiert, um die Wartung und das Verständnis zu erleichtern.

FAQ: Häufige Fragen

1. Ist VBA die einzige Möglichkeit, um sich an SAP anzumelden?
Nein, es gibt auch andere Programmiersprachen und Tools, die verwendet werden können, um sich an SAP-Systeme anzumelden, wie z.B. Python oder ABAP.

2. Wo finde ich weitere Informationen zu Excel und SAP?
Du kannst in Foren wie dem ABAP-Forum oder spezialisierten Excel-Foren nach weiteren Informationen suchen. Dort findest du oft nützliche Tipps und Tricks von anderen Nutzern.

3. Muss ich besondere Berechtigungen haben, um das SAP-Logon über VBA zu verwenden?
Ja, du benötigst die entsprechenden Berechtigungen im SAP-System, um dich erfolgreich anmelden zu können.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige