首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带有VBS SAP session.findById变量的EXCEL VBA不起作用

带有VBS SAP session.findById变量的EXCEL VBA不起作用
EN

Stack Overflow用户
提问于 2016-08-26 05:35:56
回答 2查看 3.3K关注 0票数 0

我需要循环这一部分,并用我的变量x值覆盖x标记的位置,但是如果我像图片中所示那样使用它,则不会发生任何事情。如果我输入像1或2这样的值,而不是x,它就会起作用。如何在这些地方使用变量而不是值?

下面是代码:

代码语言:javascript
复制
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

EN

回答 2

Stack Overflow用户

发布于 2016-08-26 13:12:55

代码语言:javascript
复制
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“。你真正想要的可能更像这样:

代码语言:javascript
复制
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

所以就像这样:

代码语言:javascript
复制
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
EN

Stack Overflow用户

发布于 2016-08-30 20:09:28

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39155079

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档