首页 > 专栏

浅谈Excel内容比较

更新时间:2023-11-23 01:04:05 阅读: 评论:0

情人节卡片-天津大学博士

浅谈Excel内容比较
2023年11月23日发(作者:理想的句子)

浅谈Excel内容比较

说起文件内容比较,或许我们首先想到的是UltraCompare这类专业比较的软件,其功能非常强大,能够

对基于文本的文件内容作出快速、准确的比较,有详细的差异报告,非常便于分析。其实,各种版本控制

软件中也包含有或多或少的比较功能,如TFSCVSSVN等。但是如果待比较的文件不是基于文本类型

的,那就无能为力了。今天我就来谈一谈Excel的比较方法及其特点,也和大家共同探讨一下,如果你有

更好的方法,欢迎分享。

一、Excel的文件架构

Excel的文件结构,一个Excel是一个工作簿,其中可以包含若干个工作表,正式由于这个架构,造成比较

Excel中的内容比较困难,尤其当工作表中的数据量很大时,常规的比较软件更是无能为力。

二、三种比较方法

下面我分别用三种方法来比较两个Excel中的内容,首先准备两个测试Excel,为了简单起见,两个Excel

都只包含一个工作表,其中填充了一些数字:

1

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

2

1、首先我用比较笨的方法,写一段程序,逐个比较单元格(假设两个Excel中包含的工作表的命名和个数

完全相同):

代码

private void fnExcelCompare(string v_strSourcePath, string v_strDestPath)

{

this.__int内容不同单元格个数 = 0;

this.__dic内容不同.Clear();

ation app = new ation();

yAlerts = fal;

ok srcBook = (v_strSourcePath);

ok destBook = (v_strDestPath);

FileStream log = new FileStream(pPath + @

"", Create, ite);

StreamWriter writer = new StreamWriter(log);

string msg = string.Empty;

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

ine("**************************************************************

*******************n");

foreach (eet sheet in eets)

{

for (int i = 1; i <= ; i++)

{

for (int j = 1; j <= ; j++)

{

string src = [i, j].Value2 == null ? string.Empty : sheet.

Cells[i, j].ng();

string dest = eets[].Cells[i, j].Value2 =

= null ? string.Empty : eets[].Cells[i, j].ng();

if (src != dest)

{

msg = ng() + "------" + + " " + t

his.fnGetExcelAddress(i, j) + "】单元格中的内容不相同n";

this.__int内容不同单元格个数++;

this.__dic内容不同.Add(this.__int内容不同单元格个数, msg);

ine(msg);

}

}

}

}

ine("**************************************************************

*******************n");

();

();

();

eComObject(app);

eComObject(srcBook);

eComObject(destBook);

app = null;

srcBook = null;

destBook = null;

t();

}

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

2、使用OpenXML SDK 2.0

前面的文章讲过OpenXML SDK及其相关工具的简单用法,其实还可以用它来比较Excel,当然,仅限于

比较Excel 2007Excel 2010

如果你还没有安装OpenXML SDK 2.0,可以在这里下载。

下载完毕,一步步安装结束后,就可以使用了。

1)打开Productivity Tool

2)对这个工具做一些简单配置:

可以选择显示行号、忽略命名空间、忽略声明:

选择待比较的Excel版本,我使用的Excel 2010,故选择第二个:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

3)点击【Compare Files】,然后选择两个待比较的Excel文件,点击【OK】:

4)可以看到Excel被分拆成了一个个part,标记为绿色的表示内容中有不同:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

5)选择一个标记为绿色的part,点击【View Par Diff】,可以查看具体的明细:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

这个界面与传统的比较软件中的界面非常相似,可以很容易的看出不同之处。

这种方法的缺点是比较结果不够直观,难以获取比较的汇总结果,当数据量很大时更是如此。

3、使用SpreadshCompare

SpreadshCompare是国外人写的一个VBA插件,开源免费,可以在sourceforge上下载,最新版本是1.15

支持Excel 2003Excel 2007,目前还不支持Excel 2010 x64。由于我使用的是Excel 2010 x64,故暂时

在虚拟机中进行测试。

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

我使用的Hyper-V,安装了Windows Server 2003 R2Office 2007

1)下载完毕安装后,在Excel的【加载项】中可以看到一个天平的小图标:

2)先打开两个待比较的Excel,然后分别选择两个待比较的Excel,点击【Next】:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

3)选择逐单元格比较,保持大小写敏感,其他选项默认:

4)分别选择待比较的工作表,点击【Next】:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

5)选择比较所有的区域,点击【Next】:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

6)选择生成汇总表选项,保持默认即可:

7)设置工作表的顺序,然后点击【Compare】:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

8)首先会给出一个简短的汇总信息:

9)点击【确定】后会生成两个工作簿,一个记录所有不同之处,另一个给出单元格对比分析:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

10)同时对源文件也用颜色进行了标示,黄色表示不同:

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

经过大量数据测试,该插件性能很高,速度较快。以后我会试着修改下这个插件的源代码,争取支持Excel

2010 x64

其他类似的还有Compare Spreadsheet For Excel商业软件)Excel Compare(商业软件)Synkronizer

for Excel(商业软件)等。

三、小结

本次我们畅谈了下Excel的比较问题,给出了三种解决方案,三种方案各有优劣,只是适用场合不同,请

根据你的需求进行选择。

tbw淘宝网 taob 防晒霜热卖排行榜10 什么防晒霜效果好 曼秀雷敦防晒霜 防晒霜排行

9

幼儿园娃娃家-接待管理制度

浅谈Excel内容比较

本文发布于:2023-11-23 01:04:04,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/zhishi/a/1700672645223570.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:浅谈Excel内容比较.doc

本文 PDF 下载地址:浅谈Excel内容比较.pdf

上一篇:excel选择题
下一篇:返回列表
标签:excel2010
留言与评论(共有 0 条评论)
   
验证码:
推荐文章
排行榜
Copyright ©2019-2022 Comsenz Inc.Powered by © 实用文体写作网旗下知识大全大全栏目是一个全百科类宝库! 优秀范文|法律文书|专利查询|