GetObject(, "Excel.Application")遇到的问题(在线)

cqqjzb 2006-09-27 05:36:54
在VB中检测excel应用时,如果excel的光标在单元格中,就会出现“部件忙,。。。。切换"的错误提示,如果excel文件没有光标显示则没问题,请问各位大人,能有什么办法在VB中控制excel的光标吗,或是直接能杀死excel
...全文
993 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
happy_sea 2006-09-27
  • 打赏
  • 举报
回复
楼上的代码中应该是把oApp.IgnoreRemoteRequests=true放在set oApp=GetObject(, "Excel.Application")前面吧,可是此时oApp根本就是nothing,所以也就不存在oApp.IgnoreRemoteRequests啊?!放在后面?那就没有意义了啊。。。
Hassle 2006-09-27
  • 打赏
  • 举报
回复
set oApp=GetObject(, "Excel.Application")

先oApp.IgnoreRemoteRequests=true

后oApp.IgnoreRemoteRequests=false
happy_sea 2006-09-27
  • 打赏
  • 举报
回复
杀死进程不是个好办法,因为事先并不知道会不会发生楼主所说的错误,如果用on error来捕获,不等捕获到错误,那个提示就出来了,总不能有问题没问题都先把excel杀死再说啊!
关注。。。
yangao 2006-09-27
  • 打赏
  • 举报
回复
'杀死进程
Public Sub subKillProcess(ByVal strProcess As String)

Dim strComputer As String
Dim objWMIService As Object
Dim colProcessList
Dim objProcess As Object

On Error Resume Next

strComputer = "."
Set objWMIService = GetObject("winmgmts:" _
& "{impersonationLevel=impersonate}!\\" & strComputer & "\root\cimv2")
' strProcess = "Excel.exe"
Set colProcessList = objWMIService.ExecQuery _
("Select * from Win32_Process Where Name = '" & strProcess & "'")
For Each objProcess In colProcessList
objProcess.Terminate
Next

End Sub


'调用
Call subKillProcess("Excel.exe")

7,763

社区成员

发帖
与我相关
我的任务
社区描述
VB 基础类
社区管理员
  • VB基础类社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧