C# WinForm开发系列 - Excel

简介:

01. 仅使用Dataset导入数据到Excel

[翻译]

Senthil S著Export data to Excel using Dataset only

[简介]

当前,网上已经有了不少的导入数据到Excel文件的方法,不过大部分都比较复杂,它们大多采用Datagrid 或 DataTable。本文将介绍一种最简单的方法:仅使用Dataset 导出数据到Excel。

[背景]

从代码使用的简单性角度,使用Dataset是非常方便的。不过如果从代码优化的角度而言,就不再适合了:)

02. 快速保存ListView内存中大量数据到Excel

快速保存ListView内存中大量数据到Excel
Fast Save data from ListView to Excel WorkSheet 
remex1980 原创于 2007-5-19 19:59:27 
原作者: remex1980


image
简介

本文描述如何快速保存ListView内存中大量数据到Excel的WorkSheet。关键之处是使用Range一次存储多行多列数据。

03. 纯C#代码的Excel读取器(不需要Office Excel Com组件)

[翻译]
Liu Junfeng著Excel Reader

[简介]

这个链接库是基于以下几篇文章编写出来的,非常感谢它们的作者:

复合文档格式
Excel文件格式
微软Office 97绘图文件格式

本文涉及了BIFF8/BIFF8X格式下的记录结构。


功能

1. 读出在工作簿(workbook)中的所有Worksheet
2. 读出所有WorkSheet中的单元
3. 读取单元的内容(文本,数字,日期或错误)
4. 读取单元的格式(字体,对齐,线条类型,背景等) 
5. 够读取文件中的图片,获取图象的大小,位置,数据和格式

04. Excel批量数据合并(C#操作Excel文件)

用途:

帮辅导员填一个数据调查表,1个xls文件,有10个worksheet,每个中有10-40项数据要填写,每个班有37个人,学院有24个班。如果逐个人填写需要很多时间。

可以将表格同时发给每个人,然后各自填好了一起发回来,放在同一个目录或其它位置,用此程序引入,然后做好设置,点批处理,稍后即可得到一个合并后的文件。

截图

#表示自动识别行数和列数。

编程:

将操作Excel的代码封装在类中,可以通过调用类的方法实现各种操作,类可以同时打开几个Excel文件,在内部相互赋值。

默认的1-10个Worksheet是因为帮我们辅导员的作的表格是12个表单,前10个表示需要汇总的,后两个表是编码表,不可以修改,程序也支 持1-#的自动判断,不过这时是1-12,会改变编码表1和编码表2的内容,但辅导员吵着说麻烦,就1-10设成默认属性了,这样她单击一次导入就可以 了……也是为了适应特殊要求

开启高级时
基准行数值——以某行非空内容判断列宽
基准列数值——以某列非空条件判断记录数

行范围2-#表示从第二行起到最后一行。

有待改进的内容:

1. 取消掉最大化按钮,并禁止窗体改变大小。或者重新设计界面可以适应窗体变化的。
2. 保存为:输入框最好加一个保存文件对话框之类的。
3. 程序编写时没处理异常。
4. 界面美化
5. 添加关于、帮助
6. 其他人性化功能
     (1)判断表结构,提供建议配置方案
     (2)判断导入列表中数据结构一致,如果不一致提示是否强制合并
     (3)再次打开时使用上次的设置

05. 通过文件结构直接生成xls文件

直接通过excel可以识别的文件结构生成xls文件的方法,这样就可以不引用麻烦的ole了 

06. 通过excel可识别的xml结构直接生成xls文件

上一片文章演示了如何根据简单的excel文件结构直接生成xls文件,如果涉及到合并,公式之类的复杂操作,可以使用xml结构来直接构造xls文件,比如生成如下所示文件 
 

 

07.  ASP导出Excel数据的四种方法

08.  用asp.net调用excel并输出的一点经验

09.  ASP操作Excel技术总结

10.  随心所欲  excel集成种种

最近有些项目在做集成,和Excel之类的。所遇到的问题如下:

Win下如何操作

如何处理Excel进程

如何制作AddIn

如何在Web中应用

其他.. 

11. c# 实现Word联接Excel的MailMerge功能

12. 用 XmlReader 读取 Excel 2007 文件

13. OpenXML: excel 插入BarChart图表

14. VSTO---excel编程 [待续] [12月5日更新,详见文档下面]

15. ADO.NET 如何读取 Excel (上)

16. ADO.NET 如何读取 Excel (下)

17. 导出excel的另外一种方法

18. Lullaby's Blog 原创 使用oledb,将excel导入 dataset

本方法,将传入的 Excel文件内所有的Sheet内的数据都填充入DataSet中。这是一个简单快捷的方法,不足之处是不适合带有格式的 Excel。阅读全文

19.  原创 怎么由DataSet将数据导入Excel?

本文介绍如何将DataSet 里的数据快速的导入Excel中。 阅读全文

20. KissKnife C#中对Excel的操作

21. 如何在 Microsoft Visual C# .NET 中实现 Microsoft Excel 自动化

22. Excel 对象模型概述

23. Cure C#操作Excel开发报表系列整理

     摘要: C#操作Excel进行报表开发系列共写了八篇,也已经有很久没有新东西了,现在整理一下,方便以后查阅,如果有写新的,会同时更新。   阅读全文

目前的商业工具如水晶报表,ActiveReport等,都提供了灵活,强大的功能,但是对于比较特殊化的表格,特别是国内的一些应用,都是一个个的格子组成的,这样要是用线来一根根画就比较麻烦,但是这类工具还都不提供表格化的报表布局定义方式。一个很好的选择是VS2005的客户端报表(RDLC),但是在某几个方面还是不够灵活,例如,灵活性有限制,要想自己编码实现一些复杂逻辑还是有困难;要VS2005,对于一些还在使用VS2003的项目就只有眼馋的份了。用Excel来实现,优点在于页面布局设计灵活,同时使用代码来操作数据要更灵活,更精确。

 

C#操作Excel进行报表开发系列共写了八篇,也已经有很久没有新东西了,现在整理一下,方便以后查阅,如果有写新的,会同时更新。
需要注意的是因为Office的版本不同,实际的代码可能会有所不同,但是都是多几个,少几个参数,补上参数System.Reflection.Missing.Value就可以了

将Excel应用于报表开发中(一)--开始

使用C#和Excel进行报表开发(二)-操作统计图(Chart)

使用C#和Excel进行报表开发(三)-生成统计图(Chart)

使用C#和Excel进行报表开发(四)-复制单元格

使用C#和Excel进行报表开发(五)-操作单元格边框和颜色

使用C#和Excel进行报表开发(六)-操作行和列

使用C#和Excel进行报表开发(七)-设置单元格的显示格式 

使用C#和Excel进行报表开发(八)-用程序绑定数据源 

24. (原创)datagrid数据导出到excel文件给客户端下载的几种方法

25. 特别推荐:纯VB.NET代码直接生成Excel文件(不需要Excel

26. DataGrid 导出到 Excel 的帮助类

27. 用完Excel组件后 如何彻底关闭Excel进程

28. 也谈SQL Server表与Excel、Access数据互导

29. 关于在ASP.NET中以DCOM方式操作Excel的几个问题

30. SQL SERVER 与ACCESS、EXCEL的数据转换

31. Excel导出方法总结篇

32. 如何将 Excel 数据导入 SQL Server

33. 打开一个Excel模板文件填充数据另存为一个文件

34. 我写的Asp.net操作Excel的一个类库ExcelHelper(源码下载)

35. 使用ADO.net转换数据到Excel格式并提供下载

36. asp.net操作Excel总结

37. 关于asp.net导出Excel

38. C# 操作 Excel

39. Excel与VBA程序设计》下载

40. 学习Excel技巧

41. Excel中使用VBA来筛选数据

42. DOI获得Excel选中CELL的数据

43. Excel编程

44. 如何在Form中嵌入Excel

45. 关于通过COM自动化调用Excel的效率问题

46. 基于EXCEL的WEB报表输出组件

47. 最近一直在做C#操作office方面的工作!总结一下!(一)Excel

48. asp.net里导出excel表方法汇总

49. Excel单元格的合并

50. Excel中将连续多列相同数据项合并

 

 本文转自peterzb博客园博客,原文链接:http://www.cnblogs.com/peterzb/archive/2009/07/06/1517395.html,如需转载请自行联系原作者。


目录
相关文章
|
8天前
|
SQL API 定位技术
基于C#使用winform技术的游戏平台的实现【C#课程设计】
本文介绍了基于C#使用WinForms技术开发的游戏平台项目,包括项目结构、运行截图、实现功能、部分代码说明、数据库设计和完整代码资源。项目涵盖了登录注册、个人信息修改、游戏商城列表查看、游戏管理、用户信息管理、数据分析等功能。代码示例包括ListView和ImageList的使用、图片上传、图表插件使用和SQL工具类封装,以及高德地图天气API的调用。
基于C#使用winform技术的游戏平台的实现【C#课程设计】
|
8天前
|
SQL C# 数据库
EPPlus库的安装和使用 C# 中 Excel的导入和导出
本文介绍了如何使用EPPlus库在C#中实现Excel的导入和导出功能。首先,通过NuGet包管理器安装EPPlus库,然后提供了将DataGridView数据导出到Excel的步骤和代码示例,包括将DataGridView转换为DataTable和使用EPPlus将DataTable导出为Excel文件。接着,介绍了如何将Excel数据导入到数据库中,包括读取Excel文件、解析数据、执行SQL插入操作。
EPPlus库的安装和使用 C# 中 Excel的导入和导出
|
11天前
|
物联网 C# C语言
物联网开发中C、C++和C#哪个更好用
在物联网(IoT)开发中,C、C++和C#各有优缺点,适用场景不同。C语言性能高、资源占用低,适合内存和计算能力有限的嵌入式系统,但开发复杂度高,易出错。C++支持面向对象编程,性能优秀,适用于复杂应用,但学习曲线陡峭,编译时间长。C#易于学习,与.NET框架结合紧密,适合快速开发Windows应用,但性能略低,平台支持有限。选择语言需根据具体项目需求、复杂性和团队技术栈综合考虑。
|
2月前
|
Android开发 iOS开发 C#
Xamarin:用C#打造跨平台移动应用的终极利器——从零开始构建你的第一个iOS与Android通用App,体验前所未有的高效与便捷开发之旅
【8月更文挑战第31天】Xamarin 是一个强大的框架,允许开发者使用单一的 C# 代码库构建高性能的原生移动应用,支持 iOS、Android 和 Windows 平台。作为微软的一部分,Xamarin 充分利用了 .NET 框架的强大功能,提供了丰富的 API 和工具集,简化了跨平台移动应用开发。本文通过一个简单的示例应用介绍了如何使用 Xamarin.Forms 快速创建跨平台应用,包括设置开发环境、定义用户界面和实现按钮点击事件处理逻辑。这个示例展示了 Xamarin.Forms 的基本功能,帮助开发者提高开发效率并实现一致的用户体验。
78 0
|
2月前
|
开发者 iOS开发 C#
Uno Platform 入门超详细指南:从零开始教你打造兼容 Web、Windows、iOS 和 Android 的跨平台应用,轻松掌握 XAML 与 C# 开发技巧,快速上手示例代码助你迈出第一步
【8月更文挑战第31天】Uno Platform 是一个基于 Microsoft .NET 的开源框架,支持使用 C# 和 XAML 构建跨平台应用,适用于 Web(WebAssembly)、Windows、Linux、macOS、iOS 和 Android。它允许开发者共享几乎全部的业务逻辑和 UI 代码,同时保持原生性能。选择 Uno Platform 可以统一开发体验,减少代码重复,降低开发成本。安装时需先配置好 Visual Studio 或 Visual Studio for Mac,并通过 NuGet 或官网下载工具包。
61 0
|
2月前
|
开发者 Apache 程序员
揭秘Apache Wicket:页面生命周期背后的神秘力量!
【8月更文挑战第31天】李工是一位热爱Web开发的程序员,近日在技术博客上分享了他对Apache Wicket框架的学习心得,特别是页面生命周期的理解。他认为掌握Wicket页面生命周期对于开发富交互式Web应用至关重要。他通过一个简单的计数器应用示例,详细解释了Wicket的组件化设计理念以及页面和组件在生命周期中的变化。
30 0
|
2月前
|
前端开发 开发者 Apache
揭秘Apache Wicket项目结构:如何打造Web应用的钢铁长城,告别混乱代码!
【8月更文挑战第31天】Apache Wicket凭借其组件化设计深受Java Web开发者青睐。本文详细解析了Wicket项目结构,帮助你构建可维护的大型Web应用。通过示例展示了如何使用Maven管理依赖,并组织页面、组件及业务逻辑,确保代码清晰易懂。Wicket提供的页面继承、组件重用等功能进一步增强了项目的可维护性和扩展性。掌握这些技巧,能够显著提升开发效率,构建更稳定的Web应用。
76 0
|
2月前
|
前端开发 程序员 API
从后端到前端的无缝切换:一名C#程序员如何借助Blazor技术实现全栈开发的梦想——深入解析Blazor框架下的Web应用构建之旅,附带实战代码示例与项目配置技巧揭露
【8月更文挑战第31天】本文通过详细步骤和代码示例,介绍了如何利用 Blazor 构建全栈 Web 应用。从创建新的 Blazor WebAssembly 项目开始,逐步演示了前后端分离的服务架构设计,包括 REST API 的设置及 Blazor 组件的数据展示。通过整合前后端逻辑,C# 开发者能够在统一环境中实现高效且一致的全栈开发。Blazor 的引入不仅简化了 Web 应用开发流程,还为习惯于后端开发的程序员提供了进入前端世界的桥梁。
56 0
|
5月前
|
开发框架 前端开发 .NET
C#编程与Web开发
【4月更文挑战第21天】本文探讨了C#在Web开发中的应用,包括使用ASP.NET框架、MVC模式、Web API和Entity Framework。C#作为.NET框架的主要语言,结合这些工具,能创建动态、高效的Web应用。实际案例涉及企业级应用、电子商务和社交媒体平台。尽管面临竞争和挑战,但C#在Web开发领域的前景将持续拓展。
169 3
|
5月前
|
SQL 开发框架 安全
C#编程与多线程处理
【4月更文挑战第21天】探索C#多线程处理,提升程序性能与响应性。了解C#中的Thread、Task类及Async/Await关键字,掌握线程同步与安全,实践并发计算、网络服务及UI优化。跟随未来发展趋势,利用C#打造高效应用。
181 3