对象变量或WITH变量未设置。

sword281 2008-09-22 11:01:05
以前用VB写了个小程序调用office97中的Excel生成一个新的Excel表
Dim Excel as Excel.Application
Set Excel97=new Excel.Application
....
在Excel97中编译通过能运行且正确,现在在Excel2003中编译运行时,在Set Excel97=new Excel.Application 这一行提示对象变量或WITH变量未设置,引用中也将Microsoft Excel11 object Lib 这一项钩上了,不知是什么原因,请各位大侠帮帮忙!
...全文
124 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
yinweihong 2008-10-14
  • 打赏
  • 举报
回复
office的版本不同,要用late binding~
yinweihong 2008-10-14
  • 打赏
  • 举报
回复
Dim ExcelFile as Object
Set ExcelFile= CreateObject("Excel.Application")
sword281 2008-10-14
  • 打赏
  • 举报
回复
重写了一次也不行
Dim ExcelFile as Excel.Application
Set ExcelFile= new Excel.Application
还是报对象变量或WITH变量未设置。
lcsfxs 2008-09-26
  • 打赏
  • 举报
回复
引用ADO了吗?
sword281 2008-09-26
  • 打赏
  • 举报
回复
Dim Excel as Excel.Application 为笔误,应为
Dim Excel97 as Excel.Application
fvflove 2008-09-26
  • 打赏
  • 举报
回复
Dim Excel as Excel.Application
Set Excel97=new Excel.Application
....


因为你开始是在 Excel97中调用的.

所以默认情况下.
Excel.Application
为97下的 Excel.Application 类.

而你现在是在 Excel2003下用,
所有的类库不同


引用中也将Microsoft Excel11 object Lib 这一项钩上

虽然你勾上了,不表示用的时候,就用上了.

建议.

1.取消 97 的引用.

2.将
Dim Excel as Excel.Application
Set Excel97=new Excel.Application

这二句删除,重写一次.
打死不掉牙 2008-09-22
  • 打赏
  • 举报
回复
直接dim Excel2003 As New Excel.Application就行啊
apu510064 2008-09-22
  • 打赏
  • 举报
回复
变量名
jhone99 2008-09-22
  • 打赏
  • 举报
回复
Dim Excel as Excel.Application
Set Excel97=new Excel.Application
变量名不一致
东方之珠 2008-09-22
  • 打赏
  • 举报
回复
同意3楼
lostbyte2006 2008-09-22
  • 打赏
  • 举报
回复
忘了03是不是支持set这个关键字,我用的05可以直接dim excel05 as New Excel.Application.

7,763

社区成员

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

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