1ãå¨ExcelçVBAä¸ï¼å£°æåéè¯å¥ä¸ºï¼Dim åéå As åéç±»åã 2ãSet è¯å¥æ¯ç»å¯¹è±¡ååéèµå¼è¯å¥ã 3ãä¾å¦ï¼Dim SH As worksheet è¿å¥æ¯å£°æäºä¸ä¸ªåéå为SHçå·¥ä½è¡¨ååéã 4ãèSet SH = Sheets("设置")è¿å¥æ¯æå·¥ä½è¡¨å为"设置"çå·¥ä½è¡¨æå®ç»åéSHã
SH 可以是worksheet ,object,variant B 要看你单元格的数据类型,可以是string,long,integer,double,single 不确定就variant 小程序不用考虑内存开销
RANGE 是对象类型的一种,是单元格选取的意思,你这里已经是获取选取的值VALUE 了,所以声明RANGE是不对的,range必须用SET 赋值本回答被提问者采纳
第2个回答 2015-03-22
如果实在不清楚,可以不声明,即使用默认的variant类型;如果确实想声明一下,那么可以dim SH as object,B as String(或者integer等,看你需要什么数据);如果还不死心,一定要搞清楚SH到底是什么类型,那么可以dim SH As Worksheet ,就是工作表类型,因为你赋值的Sheets("设置")是一个Worksheet,由于是对象,所以也可以用通用的object。 上面方法都可用,有什么区别呢,如果定义Worksheet(即真正的类型),这样写代码时会有代码提示,初学者推荐。 另外的声明没有问题。另外注意对象变量赋值用set本回答被网友采纳