ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 效率神器,一键搞定繁琐工作
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
让更多数据处理,一键完成 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
楼主: 香川群子

[分享] 面向VBA初学者→ VBA代码中有关【变量】的误区

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2013-2-1 20:11 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
不成熟的帖子居然加精

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-1 20:17 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
dongsmqs 发表于 2013-2-1 15:42
我反对楼主观点:从前我也是随便看看变量章节,学习编程约2年后VB.NET编写1000行以上的模块时极多时候发现与 ...

【但形成习惯后要改,那比初学多花点必思难上太多!!!】


这句话有些不好理解。

你所说的形成习惯,是形成了一个什么样的习惯呢? 愿闻其详。

还有【那比初学多花点必思难上太多!!!】
这样的说法有点匪夷所思啊。

难道世界上有什么知识,是初学者一学就会,
而不是初学者就很难学进去了?甚至再也学不好了!?


点评

这都想得到,无语了  发表于 2013-2-1 20:37
有呀,每个民族的母语小孩都能学会,等长大了你看看  发表于 2013-2-1 20:22

TA的精华主题

TA的得分主题

发表于 2013-2-1 20:28 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 dongsmqs 于 2013-2-1 20:30 编辑
香川群子 发表于 2013-2-1 20:17
【但形成习惯后要改,那比初学多花点必思难上太多!!!】

形成习惯:个人理解就是指当一种行为经常性出现,令到之后再发生相关事件后条件反射式的反应,在本例中可理解为当初学者经过一段时间后,适应了不定义变量的行为,即成为习惯,而更长期的习惯,即有可能形成性格(不过这里不谈)。
什么知识好学难学其实是裙子想要钻个空子而已,哥这里说的不是知识好学不好学,只是道理:当行为形成习惯后,你要做的不是学习一个知识,而是要改变一个习惯,学习一个知识不一定难,改变一个习惯的同时去学习同样一个知识却会比前都要难!就如在一张白纸上写几百字容易,在写满字的纸上再写几百字又要让人看清就不容易了!

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-1 20:37 | 显示全部楼层
【有呀,每个民族的母语小孩都能学会,等长大了你看看】

呵呵,这个比喻其实不正确,是感性认识大于理性分析的错误结论。

1. 小孩子投入学习语言的时间、精力,不是学外语的大人可比的。

2. 小孩子学习母语时的老师、环境是最好的,这个也不是学外语的大人可比的。

3. 小孩子的记忆力是最好的。

4. 小孩子的母语表达能力未必强过学外语的大人。(比如大人会用外语写文章时,小孩显然不行)

5. 小孩子的母语应用能力常常是在情景对话中,而且单词、短语较多。

6. 最最重要的是,小孩子直到高中毕业一直在继续学习母语。


呵呵。应该还有很多,足以证明小孩子的母语能力其实并非能超越同等条件下学习外语的成人。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-1 20:49 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
dongsmqs 发表于 2013-2-1 20:28
形成习惯:个人理解就是指当一种行为经常性出现,令到之后再发生相关事件后条件反射式的反应,在本例中可 ...

先不说别的。

单纯就是否定义变量这个行为的习惯来说,

我觉得【从不定义变量的习惯】如果需要改成【每次写代码都定义变量】这个习惯,应该还是比较容易的。
甚至是非常容易。

只要你把写代码当做职业就可以了。


反之,如果已经形成定义变量的职业习惯以后,再要改变则可能相当困难。
因为会有抵触情绪,或者开玩笑说就已经是程序员的强迫症了。


呵呵,这样的分析是否正确?

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-1 21:02 | 显示全部楼层
dongsmqs 发表于 2013-2-1 20:28
形成习惯:个人理解就是指当一种行为经常性出现,令到之后再发生相关事件后条件反射式的反应,在本例中可 ...

总之,我不太同意你对习惯的说法。


我认为,个人行为习惯,一般分为有意识形成的习惯和无意识形成的习惯两大类。


无意识形成的习惯,分物理环境和文化、道德、生理性习惯(巴甫洛夫条件反射等)

那么除了道德、文化习惯因为生存环境的问题难以改变以外,其余的无意识习惯都很容易随着环境变化而自然改变。

为什么呢?因为这是每一个生物体的环境适应能力。本质上就是如此。


至于有意识形成的习惯,那么更容易随着意识的改变而彻底改变。


那么,尤其是对应于VBA学习这个问题上来说,我认为几乎没有什么问题会成为难以改变的不良习惯。
除非你自己根本就没有意识到或认识到或发现有问题。

因为所有的问题点就是一个知识点。
只要你正确掌握了新的知识点,新的习惯就会产生。





点评

开始无聊了......  发表于 2013-2-1 22:01

TA的精华主题

TA的得分主题

发表于 2013-2-1 23:04 | 显示全部楼层
香川群子 发表于 2013-1-29 09:56
发这个帖子的原因,在于前几天,有一个初学者提出疑问:
【顺便提问:所有的书包括本论坛都说要定义变量, ...

要知道一个很基本的问题,一个坏的习惯养成了,想要改掉,是极其困难的
这件事情,争对只是需要解决简单问题的初学者来说,也许不定义变量也可以
而对于想要好好学习的初学者来说,认真面对各种规范,是以后可以学习进步的基础

TA的精华主题

TA的得分主题

发表于 2013-2-1 23:16 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
香川群子 发表于 2013-1-29 19:43
你对我的误解仅仅是缺少一个重要条件:

VBA初学者 → 引申为初学阶段

这件事情,我完全地反对
对于初学者,也应该区分,学习目的的初学者
如果一个人,是想用VBA开发规模相对较大的程序,那么就应该遵循编码规范,这样在后期,可以省力很多
而如果只是想录制一些简单的代码,解决点实际问题地学,那么,从刚开始,这些定义就是没有必要的
对于前者,如果刚开始养成了不定义变量的不好习惯,后果不堪设想的

就像一个人,刚开始的第一份工作,养成了不好的工作习惯,后来想要变,可能性就很渺茫了
偶表示最近带的新人,有几个就是这样的,带起来压力太大,呃。

TA的精华主题

TA的得分主题

发表于 2013-2-1 23:23 | 显示全部楼层
windimi007 发表于 2013-1-30 11:53
偶来膜拜一下香川老师的大作!

看到我们家小七七了

TA的精华主题

TA的得分主题

发表于 2013-2-1 23:29 | 显示全部楼层
香川群子 发表于 2013-1-30 15:38
【liucqa  Option Explicit 建议保留,这是防止手误的唯一办法。  发表于 2013-1-30 12:55 】

防止手误的 ...

【防止手误的办法是认真、用心。】
这观点我表示百分百不赞同
再认真,再用心的人,也会有手误的可能性,而规则,是借助外部条件,让人为的手误,减少到最低
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-12-23 11:29 , Processed in 0.034111 second(s), 7 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

快速回复 返回顶部 返回列表