Hallo Thomas,
generell ist das Lesen und Schreiben von Daten aus und in SAP von Office Produkten aus mit VBA möglich. SAP bietet dafür eine Schnittstelle (BAPI - Business Application Programming Interface ) an, über die man Funktionsbausteine in SAP ausführen kann. Diese Funktionsbausteine müssen Remote-Fähig, also von außen Ausführbar sein. Dafür können vorhandene Remote-fähige Funktionsbausteine in SAP angesprochen werden oder auch eigene erstellt werden.
Für deine Bedürfnisse passende Funktionsbausteine kannst du z.B. mit der Transaktion SE37 suchen. Die ganze Geschichte ist allerdings nicht gerade Trivial und ob das für einen, wie du selber sagst, absoluten SAP Neuling geeignet ist, wage ich zu bezweifeln.
RFC über VBA
Die Anmeldung im SAP mit einem RFC-fähigen User ist die Grundvoraussetzung um RFC-fähige BAPI-Funktionsbausteine ausführen zu können. Folgende Berechtigungen werden benötigt:
Objekt: S_RFC
Berechtigungsfeld: RFC_TYPE = FUGR (Funktionsbaustein)
Berechtigungsfeld: RFC_NAME = SYST
Berechtigungsfeld: ACTVT = 16 (Ausführen)
Folgende Parameter müssen übergeben werden:
System
Systemnumber
Client
User
Passwort
Language
Hostname
Hier ein kleines Beispiel für die Anmeldung:
Public Function SAP_Logon(username As String, password As String) As Boolean
'*************************************************
' ANMELDUNG AN SAP
' ACHTUNG: USER MUSS BERECHTIGUNGEN HABEN!!!!
'*************************************************
Set FunctionCtrl = CreateObject("SAP.Functions")
'Objekt für die SAP Verbindung
Set SapConnection = FunctionCtrl.Connection
SapConnection.Client = "100"
SapConnection.User = username
SapConnection.Language = "DE"
SapConnection.password = password
SapConnection.hostname = "rechnername.firma.com" 'nicht das kuerzel wie DE9
SapConnection.systemnumber = "0"
If Not SapConnection.Logon(0, True) Then 'True silent - false offen
MsgBox "Logon failed!!!", vbCritical
CMS_Logon = False
Else
CMS_Logon = True
End If
End Function