在Excel中的宏(VBA)期间检测到SAP错误

2020-08-24 06:44发布

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我在VBA上还很陌生,我在工作中使用的此Macro遇到了问题。 当我想更改SAP订单中称为"订单原因"(是向下滚动列表)的字段时,就会出现问题。 事实是,调试VBA显示的是SAP错误,因此我尝试的所有" On error"转义都无法检测到实际错误,并且仍会弹出调试信息。 调试显示:

"运行时错误'-2147417856(80010100)':
对象'ISapComboBoxTarget'的方法'key'失败"

感谢您的拼写错误,我来自阿根廷。

这是代码:

  Sub SCRIPT_ORDER_REASON()
    
     '声明变量
     暗淡兰戈As Range
     Dim celda作为范围
     Dim documento As String
     Dim ordenActual As String
     昏暗的奥尔登
     Dim ordenSiguiente作为字符串
    
 致电conn_SSO_Sap

     Session.findById(" wnd [0]")。maximize

     可变性
     设置rango = Range(" A2"," A1000")
    
     Session.findById(" wnd [0]/tbar [0]/okcd")。Text ="/img/nva02"
     Session.findById(" wnd [0]")。sendVKey 0

     ordenAnterior =""
    
     对于rango中的每个celda
       如果celda.Value <>""然后

             Session.findById(" wnd [0]/usr/ctxtVBAK-VBELN")。Text = celda.Value
             Session.findById(" wnd [0]/usr/ctxtVBAK-VBELN")。caretPosition = 9
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT \ 01/ssubSUBSCREEN_BODY:SAPMV45A:4402/ssubHEADER_FRAME:SAPMV45A:4440/cmbVBAK-AUGRU")。Key = celda.Offset(0,1)
             Session.findById(" wnd [0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT \ 01/ssubSUBSCREEN_BODY:SAPMV45A:4402/ssubHEADER_FRAME:SAPMV45A:4440/cmbVBAK-AUGRU")。SetFocus
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 11
            
             如果Session.ActiveWindow.Name =" wnd [1]",则
             '不完整的支票
                 Session.findById(" wnd [1]/tbar [0]/btn [0]")。press
             万一
            
       万一
    
     下一个
    
 致电Conn_off

 MsgBox"脚本Finalizado"
 结束子

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


大家好,

我在VBA上还很陌生,我在工作中使用的此Macro遇到了问题。 当我想更改SAP订单中称为"订单原因"(是向下滚动列表)的字段时,就会出现问题。 事实是,调试VBA显示的是SAP错误,因此我尝试的所有" On error"转义都无法检测到实际错误,并且仍会弹出调试信息。 调试显示:

"运行时错误'-2147417856(80010100)':
对象'ISapComboBoxTarget'的方法'key'失败"

感谢您的拼写错误,我来自阿根廷。

这是代码:

  Sub SCRIPT_ORDER_REASON()
    
     '声明变量
     暗淡兰戈As Range
     Dim celda作为范围
     Dim documento As String
     Dim ordenActual As String
     昏暗的奥尔登
     Dim ordenSiguiente作为字符串
    
 致电conn_SSO_Sap

     Session.findById(" wnd [0]")。maximize

     可变性
     设置rango = Range(" A2"," A1000")
    
     Session.findById(" wnd [0]/tbar [0]/okcd")。Text ="/img/nva02"
     Session.findById(" wnd [0]")。sendVKey 0

     ordenAnterior =""
    
     对于rango中的每个celda
       如果celda.Value <>""然后

             Session.findById(" wnd [0]/usr/ctxtVBAK-VBELN")。Text = celda.Value
             Session.findById(" wnd [0]/usr/ctxtVBAK-VBELN")。caretPosition = 9
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT \ 01/ssubSUBSCREEN_BODY:SAPMV45A:4402/ssubHEADER_FRAME:SAPMV45A:4440/cmbVBAK-AUGRU")。Key = celda.Offset(0,1)
             Session.findById(" wnd [0]/usr/tabsTAXI_TABSTRIP_OVERVIEW/tabpT \ 01/ssubSUBSCREEN_BODY:SAPMV45A:4402/ssubHEADER_FRAME:SAPMV45A:4440/cmbVBAK-AUGRU")。SetFocus
             Session.findById(" wnd [0]")。sendVKey 0
             Session.findById(" wnd [0]")。sendVKey 11
            
             如果Session.ActiveWindow.Name =" wnd [1]",则
             '不完整的支票
                 Session.findById(" wnd [1]/tbar [0]/btn [0]")。press
             万一
            
       万一
    
     下一个
    
 致电Conn_off

 MsgBox"脚本Finalizado"
 结束子
付费偷看设置
发送
1条回答
My梦
1楼-- · 2020-08-24 07:26

很抱歉,但是为什么选择标记:

EPM Excel加载项

仅仅是因为单词" Excel"?

一周热门 更多>