on 2021 Apr 20 7:46 AM
Hello Everyone,
I am new to SAP GUI Scripting and Excel VBA. I have a time recurring and timeconsuming Action and I wanted to automize it as soon as possible.
I have to select the Transaction CS03 (BOM) and extract all the components for the BOM. I know How to extract single Values from SAP GUI to Excel but not all the Values from the Table:
This is the problematic Part I think:
For x = 0 To AnzahlPositionen ' From SAP
ThisWorkbook.Worksheets("Components").Activate 'select Map
last = Cells(Rows.Count, 1).End(xlUp).Row + 1 'SElect free row Cells(last, 1).Value = session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-POSNR[0,0]").Text session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-POSNR[0,0]").caretPosition = 2
Cells(last, 2).Value = session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/ctxtRC29P-POSTP[1,0]").Text session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/ctxtRC29P-POSTP[1,0]").caretPosition = 1
Cells(last, 3).Value = session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/ctxtRC29P-IDNRK[2,0]").Text session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/ctxtRC29P-IDNRK[2,4]").caretPosition = 6
Cells(last, 4).Value = session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-KTEXT[3,0]").Text session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-KTEXT[3,0]").caretPosition = 14
Cells(last, 5).Value = session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-MENGE[4,0]").Text session.findById("wnd[0]/usr/tabsTS_ITOV/tabpTCMA/ssubSUBPAGE:SAPLCSDI:0152/tblSAPLCSDITCMAT/txtRC29P-MENGE[4,0]").caretPosition = 3
Cells(last, 6).Value = Stueckliste
Next x
If I change ...[0,0]").Text to ...[0,x]").Text it does not work. I just receive the first Row. I want to get every Row in the Table from the Transaction.
I hope someone can help me.
Thank You.
Request clarification before answering.
iamhamza420
Hello Hamza,
welcome in the SAP Community.
Try
...[0," & CStr(x) & "]").Text
Here an example
For x = 0 To 5
MsgBox session.findById("wnd[0]/usr/tblSAPMBIBSTC535/txtLOOP510-F1[0," & CStr(x) & "]").Text
Next
x is an integer variable and to use it inside an Id, which is a string, it is necessary to convert it.
Best regards
Stefan
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.
User | Count |
---|---|
95 | |
11 | |
9 | |
8 | |
7 | |
5 | |
4 | |
4 | |
4 | |
4 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.