Excel VBA中 单元格格式和数据类型的关系

如题所述

第1个回答  2019-05-25
单元格里的数据类型系统是根据数据内容确定的,比如:你将A列单元格格式设为保留两位的数值型,当你在A1输入
5
时,它就显示为5.00,如果输入
ABC,它就不会变成数值型,而是文本型,如果将文本改为数字后,又回到你设置的保留两位小数格式。所以单元格设置格式只能对能转换的数据有效。(当你设置为文本型后,所有输入字符都能转换为文本,可以理解为文本型才是单元格真正能设置的格式)
在VBA中的引用单元格数据时,数据类型由VBA中确定,当数据能转换时就直接赋值,不能转换时出现数据类型不匹配错误。举例来说,在单元格中输入4.56
数据,格式设为文本型,当在VBA中引用时,赋给整数型Long
Integer结果是
5(自动四舍五入),Double型结果为
4.56,String型结果是"4.56"。
实际中不必太在意数据类型,VBA运算时会自动转换数据,必要时才用函数进行类型转换。
相似回答