SAP Jobsuche bei DV-Treff
netkid
  • netkid
  • SAP Forum - Neuling Thema Starter
vor 20 Stunden
Hallo Experten!

eine Sachkontoanzeige möchte ich downloaden.

Leider kann ich dann das zu öffnende EXCEL nicht mit getObject einfangen.

Meine Meldung (Msgbox) kommt immer zu früh. Die Datei ist dann noch nicht vollständig angezeigt.

Hat jmd. solch ein Problem schon gelöst?

Mein Code:

'. . .

session.StartTransaction("FAGLL03")

'. . .

session.findById("wnd[0]/tbar[1]/btn[8]").press 'Btn "Ausführen"

'--- Download als XLSX-File --------------------------------------------------------------

session.findById("wnd[0]/tbar[0]/okcd").text = "&SELECT_SPREADSHEET"

session.findById("wnd[0]/tbar[0]/btn[0]").press

If session.findById("wnd[1]").text = "Tabellenkalkulation auswählen" then

session.findById("wnd[1]/tbar[0]/btn[0]").press

else

MsgBox vbtab & "Window" & "Tabellenkalkulation auswählen" & vbcr &"is missing!" & vbcr & vbcr & vbtab & "Exit" & vbtab & vbtab, vbSystemModal + vbExclamation, "Error"

wscript.quit

end if

If session.findById("wnd[1]").text = "Sachkonten Einzelpostenliste Hauptbuchsicht" then

session.findById("wnd[1]/usr/ctxtDY_PATH").text = "C:\Temp\"

session.findById("wnd[1]/usr/ctxtDY_FILENAME").text = "EXPORT.XLSX"

session.findById("wnd[1]/tbar[0]/btn[11]").press

else

MsgBox vbtab & "Window" & "Sachkonten Einzelpostenliste Hauptbuchsicht" & vbcr &"is missing!" & vbcr & vbcr & vbtab & "Exit" & vbtab & vbtab, vbSystemModal + vbExclamation, "Error"

wscript.quit

end if

'-----------------------------------------------------------------------------------------

Dim objExcel, objWorkbook

Do While True

On Error Resume Next

Set objExcel = GetObject(, "Excel.Application")

If Not objExcel Is Nothing Then Exit Do

On Error GoTo 0

WScript.Sleep 1000 ' Pause für 1 Sekunde

Loop

Do While True

On Error Resume Next

Set objWorkbook = objExcel.Workbooks(EXPORT.XLSX)

If Not objWorkbook Is Nothing Then Exit Do

On Error GoTo 0

WScript.Sleep 1000 ' Pause für 1 Sekunde

Loop

On Error GoTo 0

MsgBox "Die Datei EXPORT.XLSX ist jetzt vollständig geladen.", vbSystemModal + vbInformation, "Info"

WScript.Sleep 1000

objWorkbook.Sheets(1).Name = "NewName"

objWorkbook.Save

'objWorkbook.Close

'objExcel.Quit

Set objWorkbook = Nothing

Set objExcel = Nothing

netkid
  • netkid
  • SAP Forum - Neuling Thema Starter
vor 20 Stunden
Im Internet bin ich fündig geworden (ich glaube vom Scriptman):

on error resume next

do

err.clear

Set xclApp = GetObject(, "Excel.Application")

If Err.Number = 0 Then exit do

'msgbox "Wait for Excel session"

wscript.sleep 2000

loop

do

err.clear

Set xclwbk = xclApp.Workbooks.Item(strFilename)

If Err.Number = 0 Then exit do

'msgbox "Wait for SAP workbook"

wscript.sleep 2000

loop

on error goto 0

xclApp.Visible = True

xclapp.DisplayAlerts = false

Set xclSheet = xclwbk.Worksheets(1)

xclSheet.Name = strTransaction

'. . .

das funktioniert für mich