Hola Tony,
Bienvenido al Foro de Lenguaje de Scripting.
Puedes probar esto:
Sub LOGONSAP()
Dim SAPguiAPP As SAPFEWSELib.GuiApplication
Dim Connection As SAPFEWSELib.GuiConnection
Dim Session As SAPFEWSELib.GuiSession
If SAPguiAPP Is Nothing Then
Set SAPguiAPP = CreateObject("Sapgui.ScriptingCtrl.1")
End If
If Connection Is Nothing Then
'Set Connection = SAPguiApp.OpenConnection("MYSYSTEM", True)
'Here I use a connection string, but it is equivalent to OpenConnection
Set Connection = _
SAPguiAPP.OpenConnectionByConnectionString("/H/10.100.200.300/S/3200", _
True)
End If
If Session Is Nothing Then
Set Session = Connection.Children(0)
End If
'Leer nombre de usuario de la tabla Excel Sheet1, campo A1
Session.findById("wnd[0]/usr/txtRSYST-BNAME").Text = _
Worksheets("Sheet1").Cells(1, 1).Value
'Leer contraseña de la tabla Excel Sheet1, campo B1
Session.findById("wnd[0]/usr/pwdRSYST-BCODE").Text = _
Worksheets("Sheet1").Cells(1, 2).Value
Session.findById("wnd[0]").sendVKey 0
End Sub
Para usar esta solución es necesario agregar primero la biblioteca de la API de Scripting de SAP GUI como referencia a tu proyecto VBA desde el menú Herramientas. Cómo hacerlo está descrito aquí .
Haznos saber tus resultados.
Saludos
Stefan