excel.VBA 中关于 NEW 的声明的问题

为何EXCEL支持中支持使用"NEW"来创建一个新的workbook实例对象?如果真的能创建,那么这个对象对应哪个工作簿?运行后结果是显而易见的,如图... 为何EXCEL支持中支持 使用"NEW"来创建一个新的workbook实例对象?如果真的能创建,那么这个对象对应哪个工作簿?运行后结果是显而易见的,如图 展开
 我来答
tianqixueyu
2016-08-25 · TA获得超过2700个赞
知道大有可为答主
回答量:1350
采纳率:80%
帮助的人:454万
展开全部

你只是创建了一个workbook的实例化对象,并没有指明此变量的值,怎么会显示c.Name呢?

你可能又有疑问为什么别的对象可以用NEW实例化之后就可以引用了,其实是因为WorkBook是针对非excel VBA内置对象的,workbook本身就是vba的对象,也就无所谓实例化一说了,还是需要用set语句赋值

Set c = ThisWorkbook

 

New的写法,一般是在要引用其他程序的Object时用(比如,引用数据库时经常用到的New ADODB.Recordset;引用Word时的New Word.Application; 引用Outlook时的New Outlook.Application,等等). 而Range, Sheet, Workbook等等Object因为默认是Excel这个Application下的Object,所以在打开Excel时已经存在了,就无需New这种写法了.

追问
实例化对象难道不就是为此变量赋值吗?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式