chenvdxx
初级会员
初级会员
  • 发帖数4
  • QQ1790844755
  • 金币30两
  • 威望22点
  • 钻石0枚
  • 注册日期2017-03-09
  • 最后登录2017-03-23
阅读:14597回复:3

[问题求助]利用4gl关闭excel后,在工作管理员上仍卡住

楼主#
更多 发布于:2017-03-09 20:15

各位大人救命啊!!!
小弟我嘗試在4gl中處理excel檔案,利用WorkBooks.Close關閉excel後,仍然會在工作管理員上看到有excel執行中。下面是語法,小弟我漏了哪一個部分? 嘗試過下列Application.Quit方法,但是沒有效。


#CALL ui.interface.frontCall("WinCOM", "CallMethod",[xlapp, "Application.Quit"], [result]) #關閉檔案


FUNCTION test()

DEFINE xlapp    INTEGER  
DEFINE xlwb     INTEGER  
DEFINE result    INTEGER  
DEFINE str       STRING  
DEFINE filename  STRING  
DEFINE ii        STRING
DEFINE jj        STRING
DEFINE zz        STRING
DEFINE l_date    DATE
  LET xlapp = -1  #
  LET xlwb = -1  
      CALL ui.interface.frontcall("WinCOM","CreateInstance",["Excel.Application"],[xlapp])
      CALL ui.interface.frontCall("WinCOM", "CallMethod",[xlapp, "WorkBooks.Add"], [xlwb])
      LET filename="c:\\temp\\test5.xls"    
      LET jj = g_today
      CALL ui.interface.frontcall("WinCOM","GetProperty",[xlwb,'Worksheets(1).name'],[zz])
  
      LET zz = 'Worksheets("',zz,'").Cells(3,2).Value'
      LET zz = cl_replace_str(zz,' ','')
      CALL ui.interface.frontcall("WinCOM","SetProperty",[xlapp,zz,jj],[result])
      CALL ui.interface.frontCall("WinCOM", "CallMethod",[xlapp, "WorkBooks.Close"], [result])
      CALL ui.Interface.frontCall("WinCOM","ReleaseInstance", [xlwb], [result] )
      CALL ui.Interface.frontCall("WinCOM","ReleaseInstance", [xlapp], [result] )


END FUNCTION
喜欢0 评分0
13794993971
论坛版主
论坛版主
  • 发帖数51
  • QQ123523507
  • 金币621两
  • 威望195点
  • 钻石0枚
  • 注册日期2016-11-12
  • 最后登录2020-04-01
  • 社区居民
沙发#
发布于:2017-03-10 10:40
4gl不是是vba ,不是所有的方法都支持,quit方法一定是不支持的,所以你执行这句也是没有效果的
官方QQ群:481859105  

回复(1) 喜欢(0)     评分
chenvdxx
初级会员
初级会员
  • 发帖数4
  • QQ1790844755
  • 金币30两
  • 威望22点
  • 钻石0枚
  • 注册日期2017-03-09
  • 最后登录2017-03-23
板凳#
发布于:2017-03-10 13:32
13794993971:4gl不是是vba ,不是所有的方法都支持,quit方法一定是不支持的,所以你执行这句也是没有效果的回到原帖
後來逐項測試發現只要是excel儲存有取代舊檔案就會發現,就會發現即使Excel關閉,仍會卡在工作管理員上,您有這方面的經驗嗎?
回复(0) 喜欢(0)     评分
Perry
管理员
管理员
  • 发帖数213
  • QQ396572376
  • 金币43188两
  • 威望11394点
  • 钻石8888枚
  • 注册日期2016-11-09
  • 最后登录2024-11-03
  • VIP会员
  • 荣誉会员
  • 优秀斑竹
  • 最爱沙发
  • 原创写手
  • 社区居民
地板#
发布于:2017-03-10 13:45
CALL ui.Interface.frontCall("WinCOM", "CallMethod",   [result, 'Save'],[results])  
CALL ui.interface.frontCall('WinCOM','CallMethod',[xlApp,'Quit'],[results])
CALL ui.interface.frontCall('WinCOM','ReleaseInstance',[xlApp],[results])
官方QQ群:556775727  
回复(0) 喜欢(0)     评分
游客

返回顶部