我有个建议给你。
你既然想做VBA教程,其实可以参考一下 王佩丰 蓝色幻想 老师他们做的教学视频
我大概的看了下你的
1.跳跃跨度太大第一课入门,第五课用户窗体。。
2.很多东西都是点到即止。没有深入的去说,新手用户很难理解
比如第二课,第一课学了一个msgbox,第二课前半段还是msgbox
Range的解释是有错误的。
![](http://tiebapic.baidu.com/forum/w%3D580/sign=a71f0a51584a20a4311e3ccfa0529847/9d81b51bb051f81962115109cdb44aed2f73e7d5.jpg?tbpicau=2025-03-04-05_83aee77cd7886bebbcf9b3815f0e8968)
这是微软文档的解释。
range("A3") 只是告诉了 范围 A3 一个单元格
range最常用的是 range(单元格,单元格) 2个单元格之间的区域。
而不是你解释中的 range 是 先列 后行
Cells根本就没怎么讲
Cells(x,y) 这个我觉得你既然range里面在使用cells那么Cells都不讲明白别人怎么理解
cells(1,“A”) 这种写法也是可以的。而不是仅仅只是2个数字
Cells 其实很重要。比如
这个是非常常用的最后一行非空白
Cells(rows.count,"A").end(xlup).row
如果把A换成数字或者变量,也很方便
Cells(rows.count,1).end(xlup).row
如果用Range来表达 range("A65535").end(xlup).row 这种么?
我个人是不太希望新版教学还是这种07年以前的格式。
因为 Excel早就从xls格式升级到了xlsx格式了 最后一行不是65535了
而且这种代码也没有提供如何插入变量的思路。
Sheet的常用属性居然是.Activate
这个我非常不认同,既然上了VBA 为什么还需要Activate
这是录制手工操作的方式。
尤其是后期 运行的时候 为了提高速度关闭屏幕更新的时候
Activate的属性就跟没有用了。
另外 对于cells range 条件格式,循环还没有入门的来说
直接教跨表 操作是否合适?
跨表这一块 如果还是停留在Acitvate带头的状态下 不做评论了。
如果是2个表数据互通是不是要不停的 .Acitvate?
学完第二课的学生
让他在当前表格 C1 单元格写入一个 =if(a1>B1,"对","错") 可以么?
总体来说能做教程,辛苦了!
但是我觉得既然做了,楼主也是想把事情做好的,那么请多花点心思
参考一下前辈的视频。把事情做的更好。