作者:iamlaosong
将一个系统的数据导出再导入到另一个系统,虽然都是Excel文件,但格式略有不同,所以需要进行转换。功能不复杂,直接引用都可以,但是还是比较麻烦,不如写个工具,进行转换。这样导入文件干干净净,比较好。
唯一要注意的是信息中有身份证号码,在赋值到单元格中时,变成了科学格式或者后面几位都变成0,所以赋值前需要将单元格格式设成文本型(直接将导入模板文件中身份证列设成文本也可以),即:
Cells(row1, 2).NumberFormat = "@" '号码单元格设成文本格式
或者将当前行都设置成文本格式:
Range("A" & row1 & ":G" & row1).NumberFormat = "@" '号码单元格设成文本格式
VBA代码可以通过 NumberFormat或NumberFormatLocal 属性来设置单元格格式。NumberFormat,单元格格式,这个应该是通用的。NumberFormatLocal,单元格格式,这个是本地的,什么叫本地的,就是与控制面版里面的设置相关的,控制面版可以控制日期格式,货币符号等。两种属性差不多,起码文本属性没看出什么区别。只是觉得这个格式属性名称前面加了个Number比较搞笑,有点多余,还不如不加。<