首页 >> 知识问答 >

问vb 变量名命名规则 规范与禁忌详解

2026-11-14 10:42:31

答

核心结论是 VB 也就是 VBA 的变量名命名有一套固定语法规则,同时还有行业通用的推荐命名规范,语法规则属于硬性要求,不满足就会直接报错无法运行,推荐规范属于编码习惯,不会报错但是会影响代码可读性,变量名是用来标识变量的名称,命名的时候必须以字母开头,不能使用关键字,不能包含空格和特殊符号,长度有限制,VB 里面变量名不区分大小写,很多新手经常踩坑,把关键字拿来当变量名,或者名字里面加空格,运行的时候直接提示语法错误,学习的时候要把硬性语法规则和推荐命名习惯分开记忆,写代码的时候优先遵守硬性规则,再配合推荐命名风格,方便自己和别人读懂代码。

一 硬性语法规则 必须遵守

1 变量名第一个字符必须是字母,不能以数字 下划线以外符号开头,比如 1num 这种写法是错误的

2 变量名里面可以包含字母 数字 下划线,但是不能有空格 减号 斜杠 感叹号等特殊符号,比如 user name 中间带空格属于非法命名

3 不能使用 VB 保留关键字作为变量名,关键字是系统自带命令,比如 Dim If For Next Sub Integer 这些,不能拿来当变量名称

4 变量名最大长度不能超过 255 个字符,实际开发一般不会写这么长

5 VB 变量名不区分大小写,Num num NUM 会被识别成同一个变量

6 同一个过程内部,变量名不能重复定义,同名变量会产生冲突报错

二 推荐命名规范 行业习惯

1 匈牙利命名法是 VB 最常用风格,变量名前面加上类型前缀,方便一眼看出变量数据类型

常用前缀清单

str 代表字符串 例 strName

int 代表整数 例 intCount

lng 代表长整数 例 lngTotal

bol 代表布尔值 例 bolFlag

dbl 代表双精度小数 例 dblPrice

obj 代表对象 例 objSheet

2 变量名尽量做到见名知意,不要使用 a b c 这种无意义短名字,除非是循环临时变量

3 单词之间推荐使用下划线分隔,比如 int_user_count,也可以使用驼峰写法 intUserCount,两种风格都可以,但是同一个项目尽量统一风格

4 变量名不要过长,兼顾可读性和简洁,不要堆砌太多单词

三 合法与非法命名对比表格

变量名是否合法说明
intCount合法字母开头 带类型前缀
str_UserName合法下划线分隔 字符串变量
123num非法数字开头
user name非法名称里面带空格
If非法属于 VB 关键字
int Count非法空格分隔

四 补充重点注意事项

第一 虽然语法允许中文作为变量名,但是不推荐使用中文变量名,跨电脑 跨版本运行容易出现编码报错

第二 循环临时变量,比如 For 循环里面的 i j k,行业习惯可以简化命名,不需要严格加类型前缀

第三 如果开启 Option Explicit 强制声明,变量必须先 Dim 声明,命名错误会在编译阶段就提示,这个是写 VB 代码很好的习惯

第四 不要和系统内置对象重名,比如 Sheet Range Workbook 这类对象名称,不建议拿来做变量名,容易混淆代码逻辑

【常见问题】

问题 1 vb 变量名命名规则里面能不能使用关键字

回答 1 vb 变量名命名规则里面不可以使用关键字,Dim If For 这类保留关键字属于系统命令,拿来做变量名会直接语法报错

问题 2 vb 变量名命名规则区分大小写吗

回答 2 vb 变量名命名规则本身不区分大小写,Num num 会被识别成同一个变量,但是推荐统一书写风格,提升代码可读性

问题 3 vb 变量名命名规则里面可以带空格吗

回答 3 vb 变量名命名规则里面不可以带空格,名称内部出现空格属于非法写法,单词分隔推荐改用下划线或者驼峰写法

【免责申明】

本内容为 VB 变量名命名规则知识点讲解,仅供学习参考,不同 VB 版本语法细节基本一致,正式项目编码请结合团队编码规范执行。

 

相关阅读

最新文章