ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

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

记录学习【别怕,Excel VBA,其实很简单】的点点滴滴

[复制链接]

TA的精华主题

TA的得分主题

发表于 2013-2-3 06:42 | 显示全部楼层 |阅读模式
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
本帖最后由 bravolhq 于 2013-2-3 06:44 编辑

【前言】
一直对VBA很憧憬,可是工作了,就没有静下心来仔细学习,一是时间等等各种大家都懂得因素 ,二是很难静下心来阅读厚厚的那些文本;

直到《简单》(以后就简写了啊)的出现,让我重新燃起了学习她的激情

【经历】
之前在工作中做过一个半自动化的关于收听率的计算模板,将原来几天的工作时间缩短到了十几分钟,

但是这个东东不是很友好,我自己对她比较熟悉,其他同事用的时候只知道所以然,不知道内部的结构

每次业务有所变化的时候都要我自己重新调整,而且都是通过公式设置的,调整起来比较繁琐

还有就是检查原始数据的过程也很然人

那时一直想要是通过VBA添加价格按钮,让大家一点就解决问题,多牛啊,哈哈,

不过这个想法一会被束之高阁啦


今天终于开始学习啦,借着春节长假,争取有一个小小的进步。

在这记录学习《简单》的点点滴滴。

学习过程中一定有很多困惑、疑虑和问题,到时还请各位大侠多多指教啊。


图片007.jpg

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-3 06:45 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助

【疑虑1】

P45页,数据类型的表中,关于string(定长)、string(变长),解释不一样,字母都是一样的?难道是用汉字来表达不同的吗?
通常的理解是,编程过程中,中文是不被识别的吧?
刚刚开始学习,一点疑虑。

TA的精华主题

TA的得分主题

发表于 2013-2-3 13:49 | 显示全部楼层
这个你要看后面的例子,
变长:
dim str as string
变长:
dim str as string*10

区别在于string后面跟的*10

简单来说,就是变长加个指定长度就是定长了。
例子中*10,就是指定10个字符。要是指定100个字符就是*100。
如果string后面不指定长度,就是变长了。

我也正在学,不知道解释的对不对

点评

就是这个意思  发表于 2013-2-18 20:14

评分

1

查看全部评分

TA的精华主题

TA的得分主题

发表于 2013-2-3 16:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
bravolhq 发表于 2013-2-3 06:45
【疑虑1】

P45页,数据类型的表中,关于string(定长)、string(变长),解释不一样,字母都是一样的 ...

你的问题,楼上朋友讲解的很明白了。
补充一下:
1. 现在定长的字符串已经很少用了。在声明变量的时候通常是声明成为变长的String 类型。
2. 中文的问题。中文是可以作为变量名的。比如 Dim 姓名 as String, 这里姓名就是一个字符串变量了。
但是为什么不是很建议使用中文作为变量名呢,因为程序的兼容性问题,有可能你的程序工作的很好,换到一台英文版的excel 上就不工作了,也有可能你的程序被换到一台英文的操作系统比如英文的Win7 就不工作了。为了避免这些意外发生的可能,通常建议使用英文有意义的字符作为变量命名。说到变量又想起VBA 区裙子那个搅到风云雷动的帖子了。不过如果想好好的学习VBA 最后能学以致用,还是要打好基础。我本人是反裙子派的,虽然我也是个初学者,而且跟着裙子的帖子学过不少。

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-3 22:22 | 显示全部楼层
hehex 发表于 2013-2-3 16:40
你的问题,楼上朋友讲解的很明白了。
补充一下:
1. 现在定长的字符串已经很少用了。在声明变量的时候通 ...

明白了,太感谢啦

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-3 22:23 | 显示全部楼层
272767951 发表于 2013-2-3 13:49
这个你要看后面的例子,
变长:
dim str as string

非常感谢您的解答

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-7 06:30 | 显示全部楼层
p46第二个语句中(第二个灰色区域)的写法中变量名str与as连在了一起,这个与关系吗?

通常不都是用空格来间隔的吗?

谢谢

TA的精华主题

TA的得分主题

发表于 2013-2-7 09:40 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖最后由 hehex 于 2013-2-7 09:42 编辑
bravolhq 发表于 2013-2-7 06:30
p46第二个语句中(第二个灰色区域)的写法中变量名str与as连在了一起,这个与关系吗?

通常不都是用空格 ...


书没有在我的手边,如果出现 Dim stras String 这种情况,那一定是书印刷的问题,可以去勘误的帖子上看看是不是已经被抓出来了。定义变量用Dim 变量名 AS 类型 这种方式的一定要有空格的。
当然如果用简写方式 比如 Dim str$ 就不要空格了,$ 代表前面的变量是String 类型。

查了下勘误表果然是印刷错误: 46页,"Dim strAs Strimg*10”,是否应为"Dim str As String*10"

TA的精华主题

TA的得分主题

 楼主| 发表于 2013-2-12 21:23 | 显示全部楼层
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
hehex 发表于 2013-2-7 09:40
书没有在我的手边,如果出现 Dim stras String 这种情况,那一定是书印刷的问题,可以去勘误的帖子上看 ...

谢谢解答。

TA的精华主题

TA的得分主题

发表于 2013-2-18 16:46 | 显示全部楼层
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

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

GMT+8, 2024-11-26 10:49 , Processed in 0.058557 second(s), 15 queries , Gzip On, MemCache On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

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

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

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