EXCEL VBA与VBS SAP session.findById变量无法正常工作

时间:2016-08-25 21:35:56

标签: excel vba vbscript sap

我需要循环此部分并使用我的变量x值覆盖x标记的位置,但是如果我使用它,因为它显示在图片上,则会发生。如果我输入任何值,如1或2而不是x,它就可以工作。如何在这些地方使用变量而不是值?

以下是代码:

For j = 1 To SumPositionen
If Sheets("Datenverarbeitung").Cells(Z, 4) = tempCommodityForm Then
session.findById("wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/ctxt/HERA/TRDINOUT_S-MATNR[1,x]").Text = Sheets("Datenverarbeitung").Cells(a, 5) 'Eingabe Materialnummer in 1. Position
session.findById("wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/txt/HERA/TRDINOUT_S-MFQUAN[2,x]").Text = Sheets("Datenverarbeitung").Cells(a, 6) 'Eingabe Menge in 1. Position
session.findById("wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/ctxt/HERA/TRDINOUT_S-MFU[3,x]").Text = Sheets("Datenverarbeitung").Cells(a, 7) 'Eingabe UoM
x = x + 1
End If
a = a + 1
Next j

enter image description here

2 个答案:

答案 0 :(得分:0)

session.findById("wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/" & _
  "TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/ctxt/HERA/TRDINOUT_S-MATNR[1,x]").Text

此处您的字符串包含文字值“x”。你真正想要的可能更像是:

session.findById("wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/" & _
  "TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/ctxt/HERA/TRDINOUT_S-MATNR[1," & x & "]").Text

类似于:

Dim s As String, sht As Worksheet
'....
'....

Set sht = Sheets("Datenverarbeitung")

s = "wnd[0]/usr/tabsTAB_DETAILS/tabpTAB_MF/ssubTABMF:/HERA/" & _
    "TRDMF10:2023/tbl/HERA/TRDMF10TC_2023/ctxt/HERA/"

For j = 1 To SumPositionen
    If sht.Cells(Z, 4) = tempCommodityForm Then
        session.findById(s & "TRDINOUT_S-MATNR[1," & x & "]").Text = sht.Cells(a, 5)  'Eingabe Materialnummer in 1. Position
        session.findById(s & "TRDINOUT_S-MFQUAN[2," & x & "]").Text = sht.Cells(a, 6) 'Eingabe Menge in 1. Position
        session.findById(s & "TRDINOUT_S-MFU[3," & x & "]").Text = sht.Cells(a, 7)    'Eingabe UoM
        x = x + 1
    End If
    a = a + 1
Next j

答案 1 :(得分:0)

将数据类型定义为变量链接字符串和整数