Live-Forum - Die aktuellen Beiträge
Datum
Titel
01.11.2025 21:11:38
01.11.2025 14:22:20
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Mittels VBA SAP Daten ziehen

Mittels VBA SAP Daten ziehen
01.04.2021 15:41:12
Memo
Hallo VBA Experten,
eine allgemeine Frage:
Ist es denn möglich über einen Makro eine bestimmte SAP Transaktion:
- aufzurufen
- gewisse Daten (nach vorherige Eingabe der erf. Informationen im Makro)
runterzuziehen?
Ist generell eine Schnittstelle von Excel zu SAP herstellbar?
Danke für jeden Tipp.
VG
Memo

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Mittels VBA SAP Daten ziehen
01.04.2021 16:00:30
onur
SAP hat doch die Exportfunktion zu Excel - warum nimmst du nicht Diese?

AW: Mittels VBA SAP Daten ziehen
01.04.2021 16:08:41
Memo
Ich meine von Excel über ein Makro aus den Aufruf zu SAP anstoßen.
Von SAP ziehe ich täglich eine excel/csv datei runter, nehme über 3 Spalten hinweg eine einfache Berechnung vor und kopiere dann gewisse Zeilen in die Exceldatei welches sich dadurch täglich ändert.
Nun dachte ich diesen Prozess, von Excel aus anzustoßen.
Man könnte auch zuvor die Excel Datei welches zuvor von SAP runtergezogen worden ist, über das Makro dann in die Masterexceldatei importieren.
Aber das ist vermutlich etwas großes, wo ich mir noch Gedanken machen muss.
Grüße
Memo

Anzeige
AW: Mittels VBA SAP Daten ziehen
01.04.2021 16:11:36
onur
"Man könnte auch zuvor die Excel Datei welches zuvor von SAP runtergezogen worden ist, über das Makro dann in die Masterexceldatei importieren." - Genau DAS meine ich.
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Daten aus SAP in Excel ziehen mit VBA


Schritt-für-Schritt-Anleitung

Um mit Excel und VBA Daten aus SAP abzurufen, kannst du die folgenden Schritte befolgen:

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

  2. Ein neues Modul erstellen: Klicke mit der rechten Maustaste auf "VBAProject (deinWorkbookName)", wähle "Einfügen" und dann "Modul".

  3. VBA-Code einfügen: In das Modul kannst du folgenden Beispielcode einfügen, um eine SAP-Sitzung zu starten und Daten abzurufen:

    Sub SAPDatenAbrufen()
       Dim SapGuiAuto As Object
       Dim SAPApp As Object
       Dim SAPCon As Object
       Dim session As Object
    
       ' SAP GUI Automatisierung
       Set SapGuiAuto = GetObject("SAPGUI")
       Set SAPApp = SapGuiAuto.GetScriptingEngine
       Set SAPCon = SAPApp.Children(0) ' Erste Verbindung
       Set session = SAPCon.Children(0) ' Erste Sitzung
    
       ' SAP Transaktion aufrufen
       session.StartTransaction "Transaktionscode"
    
       ' Daten abrufen und verarbeiten
       ' Beispiel: session.FindById("ID").Text
    End Sub
  4. Transaktionscode anpassen: Ersetze "Transaktionscode" mit dem spezifischen Transaktionscode, den du nutzen möchtest.

  5. Makro ausführen: Schließe den VBA-Editor und führe das Makro über die Entwicklertools in Excel aus.


Häufige Fehler und Lösungen

  • Fehlermeldung beim Starten von SAP: Stelle sicher, dass SAP GUI installiert ist und du die richtige Version nutzt.
  • Keine Verbindung zu SAP: Überprüfe deine SAP-Anmeldeinformationen und die Netzwerkverbindung.
  • VBA-Scripting nicht aktiviert: Aktiviere das Scripting in den SAP GUI-Einstellungen, um die Excel-SAP-Schnittstelle nutzen zu können.

Alternative Methoden

Wenn du keine VBA-Lösung nutzen möchtest, kannst du auch die native Exportfunktion von SAP verwenden. Hier ist eine kurze Anleitung:

  1. Führe die gewünschte Transaktion in SAP aus.
  2. Wähle "System" > "Liste" > "Exportieren" und wähle "Excel".
  3. Speicher die Datei lokal und öffne sie in Excel.

Diese Methode ist einfach, aber nicht automatisiert. Wenn du die Daten aus SAP in Excel automatisch aktualisieren möchtest, ist die VBA-Option die bessere Wahl.


Praktische Beispiele

Ein häufiges Szenario ist das Abrufen von Verkaufsdaten aus SAP. Du kannst VBA so anpassen, dass es Verkaufszahlen von einem bestimmten Zeitraum abruft:

Sub VerkaufsDatenAbrufen()
    ' Ähnlicher Code wie oben, aber spezifisch für Verkaufsdaten
    ' Beispiel: session.FindById("ID_Verkaufszahlen").Text
End Sub

Mit dieser Anpassung kannst du gezielt Daten abrufen und in deine Excel-Arbeitsmappe importieren.


Tipps für Profis

  • Modularer Code: Teile deinen Code in verschiedene Subroutinen auf, um die Lesbarkeit und Wartbarkeit zu erhöhen.
  • Fehlerbehandlung: Nutze On Error Resume Next, um Fehler abzufangen und zu handhaben, ohne dass das Makro stoppt.
  • Regelmäßige Updates: Plane regelmäßige Updates deiner Daten, indem du das Makro über die Windows Aufgabenplanung automatisch ausführen lässt.

FAQ: Häufige Fragen

1. Ist es möglich, mehrere SAP-Daten gleichzeitig abzurufen?
Ja, du kannst mehrere Subroutinen für verschiedene SAP-Transaktionen erstellen und diese nacheinander aufrufen.

2. Welche Excel-Version benötige ich für SAP VBA?
Die meisten modernen Excel-Versionen (2010 und höher) unterstützen VBA und die SAP-Schnittstelle.

3. Kann ich Daten aus SAP in Excel automatisch aktualisieren?
Ja, du kannst VBA verwenden, um regelmäßig Daten aus SAP abzurufen und deine Excel-Daten automatisch zu aktualisieren.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige