VB6.0处理Office2007以上版本的Excel数据dnf电锯
VB6.0刚出来那会⼉,Office还是2000版的。
英雄联盟探险家出装 就是因为打印功能不⾏,VB的打印功能,都是靠连接Excel,⽤Excel表格实现的。
VB6.0也是个⽼实孩⼦,这么多年本本分分的,也没弄什么升级的猫腻,⽤的习惯顺⼿,尽管也有更新更好的同类软件,也没有想过要换,没有必要嚒。
Office就不⼀样了,马不停蹄的⼀路升级,从2000到2003,以后到了2007就变得更不像话了,基本功能还是那些,可是画⾯变了,操作⽅式变了,⽽且后缀名也变了。
中国⼈的习惯,⽤什么都要⽤最好的,不管功能上需不需要,谁知道呢?万⼀有⽤呢?
super junior m资料 所以现在的⼀般⼈所⽤的Office⼏乎都在2010版以上,据说⼜有2013版了。
所以,如果你的电脑⾄今还⽤的Office2003,也不能怪⼈说你Out了。
如果⽤户发给你了⽂件,版本⽐你⽤的⾼,你可能就打不开。你总不能要求⽤户再给你转存成低版本的
吧,你也只能也装⼀个⾼版本的。
因此,VB6.0想连接Excel就变的⿇烦起来。
如果你是⾃⼰开发,还好,在⾃⼰的电脑上安装office2003,把需要处理的Excel转存为2003的格式。
如果你是给⽤户开发软件,那⿇烦⼤了。你要求⽤户的电脑必须安装office2003,⽽且还要把必须要处理的Excel转存为2003格式。那有点太矫情了吧,怎么张得开嘴说。
最近做了⼀个项⽬,⽤户的原始⽂件是Excel,后缀名xlsm,⽤VB程序处理数据,加⼈数据库。
这种情况,可⾏的办法是,
1 电脑上⾸先安装office2003。
2 然后安装office2007以上版本,但是⼀定要选择升级的⽅式。这样才能保留2003原有的,可以为VB所使⽤的控件。
3 将需要处理的Excel⽂件转存为,后缀名为xls的2003兼容模式。
植物传播种子的方法有很多
现在就可以在VB程序⾥⽤最简单的办法连接Excel了。
Set MyExcel = CreateObject("Excel.Application")
一条小团团露脸 Set MyBook = MyExcel.Workbooks.Open(FileName)
Set MySheet = MyBook.Sheets(1)
然后,你就可以⾃由的读写Excel⾥各单元的值。
421林俊杰是真的吗 这种办法⽤在XP的操作系统上没问题,在更⾼版本上,就不⼀定,时好时坏,不知哪⾥,但是知道肯定是控件的兼容性问题,系统还是要提⽰你“⾃动化连接错误“。
虽然有可⾏⽅案,但是向⽤户提这样的要求,不是要挨骂吗?⽽且⼀旦有了版本冲突的问题,你还要喋喋不休的向⽤户解释,澄清,说这不是程序的错,是版本兼容问题,以后说不尽的烦恼等着呢。
如果不值得去换⼀个更⾼版本的VB软件,有⼀个很简单的解决⽅法。
在Excel⾥⾯编写⼀段宏指令程序,把Excel表格,以⾏为单位,保存成普通顺序⽂件。
只要⽤户的表格的格式固定的,这个程序就可以固定下来。
程序运⾏以后,可以在C盘下看见刚才保存的“”abc“”⽂件。
OK,处理这个底层的⽂件系统,是VB的最基本功能,轻车熟路。
发布评论