cancel
Showing results for 
Search instead for 
Did you mean: 

Extract Components from Transaction CS03

914

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.

Accepted Solutions (0)

Answers (1)

Answers (1)

Stefan-Schnell
Active Contributor
0 Kudos

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