如何在VBA Excel中从剪贴板上载?

如何在VBA Excel中从剪贴板上载?,vba,sap-gui,Vba,Sap Gui,执行一个事务后,我得到一堆用户ID,然后复制它并将其粘贴到事务的另一部分 在下面的代码中,我复制了第一部分中的用户ID并将其存储在BNAME中 VBA无法从第二部分的剪贴板上载 也许它不喜欢第一部分中的Ctrl+C Set SAPGUIAuto=GetObject(“SAPGUI”) 设置sapplication=SAPGUIAuto.GetScriptingEngine 设置连接=sapplication.Children(0) 设置会话=连接。子级(0) session.findById(“

执行一个事务后,我得到一堆用户ID,然后复制它并将其粘贴到事务的另一部分

在下面的代码中,我复制了第一部分中的用户ID并将其存储在BNAME中

VBA无法从第二部分的剪贴板上载

也许它不喜欢第一部分中的Ctrl+C

Set SAPGUIAuto=GetObject(“SAPGUI”)
设置sapplication=SAPGUIAuto.GetScriptingEngine
设置连接=sapplication.Children(0)
设置会话=连接。子级(0)
session.findById(“wnd[0]”)。最大化
session.findById(“wnd[0]/tbar[0]/okcd”).Text=“suim”
session.findById(“wnd[0]”)。sendVKey 0
**######第一部分######**
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).expandNode“02 1 2”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).topNode=“01 1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).expandNode“03 2 7”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。选择项“04 2 8”、“1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。确保可修改的水平项目“04 2 8”、“1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).topNode=“01 1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。单击链接“04 2 8”、“1”
session.findById(“wnd[0]/usr/btn%\u ACTGRPS\uuu%\u APP\uuu%%VALU\u PUSH”)。按
session.findById(“wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,0]”。Text=“********”
session.findById(“wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,1]”。Text=“***********”
session.findById(“wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,2]”。Text=“***********”
session.findById(“wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblsaplaldbssingle/ctxtRSCSEL_255-SLOW_I[1,2]”。SetFocus
session.findById(“wnd[1]/usr/tabsTAB_STRIP/tabpSIVA/ssubSCREEN_HEADER:SAPLALDB:3010/tblSAPLALDBSINGLE/ctxtRSCSEL_255-SLOW_I[1,2]”。caretPosition=18
session.findById(“wnd[1]/tbar[0]/btn[8]”。按
session.findById(“wnd[0]/tbar[1]/btn[8]”。按
session.findById(“wnd[0]/usr/cntlGRID1/shellcont/shell/shellcont[1]/shell”)。currentCellRow=-1
session.findById(“wnd[0]/usr/cntlGRID1/shellcont/shell/shellcont[1]/shell”)。选择列“BNAME”
**#####获得了一堆用户ID,并在Ctrl+C的帮助下复制了它######**
session.findById(“wnd[0]/tbar[0]/btn[3]”。按
session.findById(“wnd[0]/tbar[0]/btn[3]”。按
**######第二部分######**
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).expandNode“02 1 10”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”).topNode=“01 1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。选择项“03 3 1”、“1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。确保可修改的水平项目“03 3 1”、“1”
session.findById(“wnd[0]/usr/cntlTREE\u CONTROL\u CONTAINER/shellcont/shell”)。单击链接“03 3 1”、“1”
session.findById(“wnd[0]/usr/btn%\u USER\uuu%\u APP\uuu%%VALU\u PUSH”)。按
session.findById(“wnd[1]/tbar[0]/btn[24]”。按
session.findById(“wnd[1]/tbar[0]/btn[8]”。按

您可以尝试以下方法:

'...    
session.findById("wnd[0]/usr/cntlGRID1/shellcont/shell/shellcont[1]/shell").selectColumn "BNAME"
'---------------------- new -----------------------------------------
session.findById("wnd[0]/usr/cntlGRID1/shellcont/shell/shellcont[1]/shell").contextMenu
session.findById("wnd[0]/usr/cntlGRID1/shellcont/shell/shellcont[1]/shell").selectContextMenuItemByPosition "0"
'---------------------- new -----------------------------------------
'#####Got Bunch of User Ids and copied it with the help of Ctrl+C ######
'...