中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 再来提问xls文件对比处理的问题,vbs,bat都行
作者:
标题: 再来提问xls文件对比处理的问题,vbs,bat都行 上一主题 | 下一主题
loquat
初级用户





积分 81
发帖 80
注册 2009-8-30
状态 离线
『楼 主』:  再来提问xls文件对比处理的问题,vbs,bat都行

本来想在上次那个帖子里提问的,但是原帖好像给删了,找不到。只好重开一贴。

比较两个文件。

a.xls和b.xls的格式如下:
a.xls
A               B            C                          D
证券代码        证券名称     2005年报事务所                2005年报审计意见
000001             深发展A          深圳鹏城会计师事务所        标准无保留意见
000002             万科A          毕马威华振会计师事务所        标准无保留意见
000004             *ST国农          深圳鹏城会计师事务所        标准无保留意见
000005             世纪星源     深圳鹏城会计师事务所        标准无保留意见

b.xls
证券代码        证券名称   2006年报事务所               2006年报审计意见
000001             深发展A        深圳鹏城会计师事务所            标准无保留意见
000002            万科A        毕马威华振会计师事务所      标准无保留意见
000004             *ST国农        深圳鹏城会计师事务所            标准无保留意见
000005             世纪星源   利安达信隆会计师事务所      标准无保留意见
要求:
C项中“会计师事务所”如果变化了,把对应的ABCD项都复制到新txt文件里面。
txt格式如下:
A   B   C    D   E   F
证券代码   证券名称   2005年报事务所   2005年报审计意见   2006年报事务所   2006年报审计意见
000005           世纪星源   深圳鹏城会计师事务所  标准无保留意见  利安达信隆会计师事务所  标准无保留意见
一下几个统一标示便于编写批处理

  Quote:
标准无保留意见记为0;带强调事项段的无保留意见记为1;无法表示意见记为2;保留意见记为3;否定意见记为4;未披露审计意见类型记为5;--记为6.

[ Last edited by loquat on 2010-4-10 at 16:40 ]

2010-4-10 16:37
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
Hanyeguxing
银牌会员

正在学习中的菜鸟...


积分 1039
发帖 897
注册 2009-3-1
来自 在地狱中仰望天堂
状态 离线
『第 2 楼』:  

将两个xls文件用excel 打开,复制有效内容到a.txt和b.txt中。
注意,批脚本中set "a=        "里出现的连续空格实际是一个制表符。
@echo off&setlocal enabledelayedexpansion
set "a=        "
for /f "tokens=1-4 delims=%a%" %%a in (a.txt) do set "%%a%%b=%%c"&set "%%a%%b_=%%d"
for /f "tokens=1-4 delims=%a%" %%a in (b.txt) do if not "!%%a%%b!"=="%%c" (set "b=%%a%a%%%b%a%!%%a%%b!%a%!%%a%%b_!%a%%%c%a%%%d"&set b=!b:标准无保留意见=0!&set b=!b:带强调事项段的无保留意见=1!&set b=!b:无法表示意见=2!&set b=!b:保留意见=3!&set b=!b:否定意见=4!&set b=!b:未披露审计意见类型=5!&set b=!b:--=6!&echo.!b!)>>寒夜孤星.txt
上一次的地址:http://www.cn-dos.net/forum/view ... hlight=%2Bloquat###

[ Last edited by Hanyeguxing on 2010-4-10 at 20:34 ]



批处理之家 http://bbs.bathome.net/forum-5-1.html
2010-4-10 20:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 3 楼』:  

BAT不适合操作xls文件,学学VBS吧。



2010-4-10 20:45
查看资料  发短消息 网志   编辑帖子  回复  引用回复
loquat
初级用户





积分 81
发帖 80
注册 2009-8-30
状态 离线
『第 4 楼』:  



  Quote:
Originally posted by Hanyeguxing at 2010-4-10 20:09:
将两个xls文件用excel 打开,复制有效内容到a.txt和b.txt中。
注意,批脚本中set "a=        "里出现的连续空格实际是一个制表符。
[code]@echo off&setloc ...

代码可能还需要加一个判断。原来的数据里“深圳鹏城会计师事务所”“深圳市鹏城会计师事务所有限公司”应该是同一家公司。
000007        ST达声        深圳鹏城会计师事务所        0        深圳市鹏城会计师事务所有限公司        0

2010-4-10 20:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
loquat
初级用户





积分 81
发帖 80
注册 2009-8-30
状态 离线
『第 5 楼』:  

“上海立信长江会计师事务所有限公司”和“立信会计师事务所有限公司”也应该是同一个公司。

2010-4-10 21:00
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yishanju
银牌会员

[b]看你妹啊[/b]


积分 1488
发帖 1357
注册 2006-5-20
状态 离线
『第 6 楼』:  



  Quote:
Originally posted by Hanyeguxing at 2010-4-10 20:09:
将两个xls文件用excel 打开,复制有效内容到a.txt和b.txt中。
注意,批脚本中set "a=        "里出现的连续空格实际是一个制表符。
[code]@echo off&setloc ...

另存为CSV更好一些。




有问题请发论坛或者自行搜索,再短消息问我的统统是SB
2010-4-11 22:37
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: