当前位置:编程学习 > VB >>

字符串替换问题,想调用excel

实际工作问题描述:
有两张.txt的语言表,可以用excel打开,一张是版本较新的表,一张是旧表。如下图

旧表



新表



需要把新表的某列语言替换到旧表对应某列中,如新表的“Enghlish”替换到旧表的“English”。


要求:用程序实现。效果如图:


过程描述:要求操作过程如上图,点击“浏览”导入新,旧表,在下拉菜单中选择需要替换的语言,点击“执行语言替换” 即完成操作,将结果保存到旧表中。



苦衷:单纯的字符串匹配替换,用excel的高级操作十分容易完成,可以用函数vlook(),iserror(),if()来做,还可以将公式录制为“宏”简化操作。
     但是工作要求要做出一个程序,要上面描述的过程来完成,界面也和上面的差不多。
该怎么着手呢? 该走什么方向。


我的想法: 1.用VB做,用VB来调用excel’,自动完成导入表到excel,在excel中选择列(实现下拉菜单),调用excel的函数vlook(),iserror(),if()等函数,最后在excel中保存。

           2.用任何一种开发语言和工具,把两张表先导入数据库(最好是access),通过数据库来操纵表,最后导出

           3.用C,或者java,什么都可以,实现对两张字符表txt文件的读取,并根据文件的特点区分字段,完成字符替换。 (可以不用界面,可以用控制台程序)



CSDN上有那么多程序员高手,请各位大侠,牛人给我一个方向,或者解决意见。 如果有代码那就感激不尽了!

--------------------编程问答-------------------- 你的图看不到。

另外字符串操作,引用正则组件应该挺有意思。 --------------------编程问答-------------------- 反映说图看不到,所以从新发帖

实际工作问题描述:
有两张.txt的语言表,可以用excel打开,一张是版本较新的表,一张是旧表。如下图

旧表


新表


需要把新表的某列语言替换到旧表对应某列中,如新表的“Enghlish”替换到旧表的“English”。


要求:用程序实现。效果如图:



过程描述:要求操作过程如上图,点击“浏览”导入新,旧表,在下拉菜单中选择需要替换的语言,点击“执行语言替换” 即完成操作,将结果保存到旧表中。



苦衷:单纯的字符串匹配替换,用excel的高级操作十分容易完成,可以用函数vlook(),iserror(),if()来做,还可以将公式录制为“宏”简化操作。
     但是工作要求要做出一个程序,要上面描述的过程来完成,界面也和上面的差不多。
该怎么着手呢? 该走什么方向。


我的想法: 1.用VB做,用VB来调用excel’,自动完成导入表到excel,在excel中选择列(实现下拉菜单),调用excel的函数vlook(),iserror(),if()等函数,最后在excel中保存。

           2.用任何一种开发语言和工具,把两张表先导入数据库(最好是access),通过数据库来操纵表,最后导出

           3.用C,或者java,什么都可以,实现对两张字符表txt文件的读取,并根据文件的特点区分字段,完成字符替换。 (可以不用界面,可以用控制台程序)



CSDN上有那么多程序员高手,请各位大侠,牛人给我一个方向,或者解决意见。 如果有代码那就感激不尽了!

--------------------编程问答-------------------- vb可以实现,你说的也挺好的。现在关键是你会到哪步 --------------------编程问答-------------------- 没什么难度。

楼主确定两张表的条目数量(行数)相同吗?
条目顺序是否相同?

因两张表的语言列表可能不完全相同,是否会有(或:允许)用 新表的语言1 去替换 旧表的语言2 的情况?

--------------------编程问答--------------------
按我比较习惯的做法,是:

将两表 .txt 文件作为 Jet Engine 的外部数据库表读入两个 Recordset 记录集对象。

替换时,将新旧表的内容组合,按原格式输出到一个新的 .txt 文件。

删除就表文件,或者改名备份(例如及扩展名改为 .bak)。

将新文件改为旧表名。

重新读入旧表记录集,备用。
--------------------编程问答-------------------- 你的界面其实是忽悠人的吧。

如果数据规则的话,载入两个数据表,其实单元格的内容是对应的,比如sheets("旧表").cells(i,j)和sheets("新表").cells(i,j),用新替换旧就好了吧?

创建个excel,通过宏,启动的时候创建一个菜单项
建个过程,读取文本文件装入excel,通过菜单项中的新建按钮调用这个过程
通过遍历新旧表,替换单元格内容,中间可能要通过表名、字段名做匹配
最后回写旧数据表名,再做几个比较花哨的按钮,界面整整,

交差 --------------------编程问答-------------------- 这个直接写个excel,转成exe。 --------------------编程问答--------------------
补充:VB ,  VBA
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,