在以前的博文中——CAD批量处理工具——BatchProc,即只要用户输入处理单个文件的代码,即可批量处理多个文件。使用起来特别方便。

在现在的地籍处理中,处理Excel的情况比较多,尤其需要反反复复修改,那些做数据的真是伤不起!他们数据的特点是:

(1)在某一个环节上,才发现上一个环节出了问题,得瞒着领导来补救啊,着急

(2)数据的问题不能完全确定,在多数存在这个问题,还是极个别,是存在三个问题还是五个问题,不确定性

(3)每次处理的问题都不同,代码基本不能重用,一次性消费,重用性差

那咋办,还是得来处理啊,毕竟是老板发工资。为了尽量少写代码,我委托来处理,委托哪个?用C#中的委托!

实现思路:

1.按照以前,我会通过OpenDlg来获取所有要处理文件的Path,但这样有个问题,如果文件夹下有子文件夹,要通过查找来选择需要处理的xls或xlsx文件,索性直接获取所有文件,自定义函数如下图,将所有要处理的文件放到List中。

2.按照以前,我们将文件列表List传进去,New app,New book,New sheet,然后进行遍历处理,最后保存,关闭。每一次修改代码即可修改下图中框选的部分,这样确实显示不专业,于是使用是C#中的委托,即传入一个事件,这样就不用每次修改TraversalPprocessing了。

3. 按照以前,我不怎么使用它,我觉得它没有用,看了《.NET之美》后,效果真的不一样了,我会定义委托了。每次都处理的是工作簿,所以传入它即可。(不要传工作表哦,可能处理多个工作表,还可能修改工作簿的属性);

4.现在,我只需要写一个处理函数,处理单个工作表即可。

5.最后,直接调用委托。

如果是,他们也能写代码,每次就写自己要处理的那部分,那会怎样呢?……我会丢饭碗!

委托批量处理Excel的更多相关文章

  1. VSTO学习笔记(五)批量编辑Excel 2010 x64

    原文:VSTO学习笔记(五)批量编辑Excel 2010 x64 近期因为工作的需要,经常要批量处理大量的Excel文件,如果纯手工一个个修改,非常的麻烦,于是写了这么一个帮助类,希望能对你有所帮助. ...

  2. 关于SSIS批量抽取Excel文件报0x80004005错误的解决办法

    原文:关于SSIS批量抽取Excel文件报0x80004005错误的解决办法 标题: Microsoft Visual Studio ------------------------------ Pa ...

  3. 一键批量打印EXCEL、WORD文档

    一键批量打印EXCEL.WORD文档,本方法也可以打印同一个文档N份,可以批量打印A3.A4文档,包括单.双面打印等.希望能帮到广大朋友.请大家注重原创版权,不得在未经许可的下转载.传播,或者用来对同 ...

  4. 批量删除Excel里面的换行符

    关于批量删除excel里面的换行符,应该说写程序的遇上excel大体都会有这么个问题,在解决这个问题前,我的解决办法是把excel 的数据全部复制到txt里面, 因为操作txt比操作excel更为简单 ...

  5. 使用VBA批量转换Excel格式,由.xls转换成.xlsx

    问题分析: Excel2007以前的格式是.xls,之后的格式是.xlsx.打开单独的一个Excel文档,使用“另存为”功能,可以很轻松的转换格式.但是面对几百个Excel表这样就太累了,搜索很久,也 ...

  6. springboot批量导入excel数据

    1 背景 小白今天闲着没事,在公司摸鱼,以为今天有事无聊的一天,突然上头说小子,今天实现一下批量导入Excel数据吧,当时我的内心是拒绝的,然后默默打开idea. 2 介绍 2.1 框架 java本身 ...

  7. Excel实用技巧-如何批量提取excel工作表名称

    Excel实用技巧-如何批量提取excel工作表名称 1. 打开Excel文件,点击“公式”栏,进而点击“定义管理器” 2. 在弹出的对话框中,点击新增按钮, 名称:“sheet”,引用位置:“=RE ...

  8. MySQL批量导入Excel数据

    MySQL批量导入Excel数据 1.确定需要导入数据的表名称以及字段,然后在新建的Excel表中,按照表字段正确排序:(注:(Excel文件的名称最好和数据库的名称一致,sheet表的名字最好和表名 ...

  9. MySQL批量导入Excel、txt数据

    MySQL批量导入Excel.txt数据 我想Excel是当今最大众化的批量数据管理软件了吧,所以我们会经常涉及到将Excel中数据导入到MySQL中的工作.网上有一些关于直接将Excel导入MySQ ...

随机推荐

  1. centos7 更改时区

    Linux 系统(我特指发行版, 没说内核) 下大部分软件的风格就是不会仔细去考虑向后 的兼容性, 比如你上个版本能用这种程序配置, 没准到了下一个版本, 该程序已经不见了. 比如 sysvinit ...

  2. Linux-I/O五种模型

    一. 概念说明 在进行解释之前,首先要说明几个概念: 用户空间和内核空间 进程切换 进程的阻塞 文件描述符 缓存 I/O 同步(Sync)/异步(Async) 阻塞(Block)/非阻塞(Unbloc ...

  3. hdu 2709 递推

    题意:给出一个数,把他拆成2^n和的形式,问有多少种拆法 链接:点我 对6进行分析 1 1 1 1 1 1 1 1 1 1 2 1 1 2 2 1 1 4 2 2 4 2 4 对最上面4个,显然是由4 ...

  4. Educational Codeforces Round 12 E. Beautiful Subarrays 字典树

    E. Beautiful Subarrays 题目连接: http://www.codeforces.com/contest/665/problem/E Description One day, ZS ...

  5. List与ArrayList的区别

    http://www.cnblogs.com/aisiteru/articles/1151874.html List是一个接口,而ListArray是一个类. ListArray继承并实现了List. ...

  6. Selenium自动化工具工作原理

    http://blog.csdn.net/five3/article/details/6790925 原文作者信息如下,需要更多信息请去原作者博客查看: 作者:hyddd 出处:http://www. ...

  7. 发现一个CentOS第三方源epel的仓库地址(repos.fedorapeople.org)

    这个站点(http://repos.fedorapeople.org)很有意思,比如要安装maven,官方源默认是没有的,当然可以安装epel源,而如果只要单独安装,可以直接安装一个仓库地址. 下面将 ...

  8. Spark编程指南V1.4.0(翻译)

    Spark编程指南V1.4.0 ·        简单介绍 ·        接入Spark ·        Spark初始化 ·        使用Shell ·        在集群上部署代码 ...

  9. sql 锁类型与锁机制 转

      SQL Server锁类型(SQL)收藏1. HOLDLOCK: 在该表上保持共享锁,直到整个事务结束,而不是在语句执行完立即释放所添加的锁.   2. NOLOCK:不添加共享锁和排它锁,当这个 ...

  10. java内存泄露补充样例

    前几天写了个内存泄露的文章.里面介绍了内存泄露的相关知识:http://blog.csdn.net/u010590685/article/details/46973735 但是里面给的样例不是非常好, ...