VB 打开Excel 提示 对象 “Open” 方法“workbook” 失败

PublicmobjExcelAsExcel.ApplicationPublicxlsheetAsExcel.WorksheetPublicSubOpenExcel()O... Public mobjExcel As Excel.Application
Public xlsheet As Excel.Worksheet

Public Sub OpenExcel()
On Error GoTo err
Dim FilePitch As String
Dim FileRoll As String
Dim pWnd As Long
FilePitch = Main.Filename.Caption '

Set mobjExcel = Nothing
Set mobjExcel = CreateObject("Excel.Application")
mobjExcel.Workbooks.Open FilePitch, False, True

mobjExcel.DisplayAlerts = False
mobjExcel.AlertBeforeOverwriting = False
mobjExcel.Visible = True

Exit Sub
err:
MsgBox err.Description
展开
 我来答 举报
三心全乱
2013-04-27 · TA获得超过6160个赞
知道小有建树答主
回答量:518
采纳率:100%
帮助的人:235万
展开全部
在excel的VBA下测试正常,看您的 Main.Filename.Caption 是否是合法的文件名路径。
还有,这个文件是否已经被打开,是否存在。
引用的excel库是否还正常。
追问
VB中excel库显示是正常的,在别的电脑是能打开的,任务管理中显示有execel 文件被打开 但是报错
1 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
damyzl
2013-04-27 · TA获得超过1586个赞
知道大有可为答主
回答量:1475
采纳率:74%
帮助的人:934万
展开全部
你的过程是写在通用模块里的吧?那么
Main.Filename.Caption
没有意义,你需要由参数传入文件名字。比如:
Public Sub OpenExcel(fileName as string)

FilePitch = fileName
追问
main 是窗体, filename 是lable,在别的电脑是能打开的,任务管理中显示有execel 文件被打开 但是报错
追答
如果你的函数 OpenExcel 是写在窗体模块是没问题的。
既然别的电脑上没问题,那可能是你的OFFICE版本问题。好像07后的版本是不行的。
本回答被提问者采纳
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
cjsaohan
2013-04-27 · TA获得超过204个赞
知道小有建树答主
回答量:290
采纳率:0%
帮助的人:241万
展开全部
调试跟踪一下你的FilePitch变量值,是否对应有Excel文件
抢首赞 已赞过 已踩过<
你对这个回答的评价是?
评论 举报 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式