C# 对Excel表格中的数据进行排序
使用Excel处理数据时我们经常需要用到数据排序功能,这篇文章将介绍如何使用C#对Excel中的数据进行排序。这里介绍三种排序方式:
- 基于单元格的值进行排序
- 基于单元格的背景颜色进行排序
- 基于单元格的字体颜色进行排序
注:文中用到的组件是Spire.XLS,安装后,需要从安装目录Bin文件夹下引用Spire.Xls.dll文件到项目中。
1.基于单元格的值
//创建Workbook实例
Workbook workbook = new Workbook();
//加载Excel文档
workbook.LoadFromFile(@"SortData.xlsx");//获取第一个工作表
Worksheet worksheet = workbook.Worksheets[0];//指定需要排序的列索引以及排序的方式 (基于单元格的值)
SortColumn column = workbook.DataSorter.SortColumns.Add(0, SortComparsionType.Values, OrderBy.Descending);//排序是否包含标题(默认第一个数据为标题,不会对它进行排序)
workbook.DataSorter.IsIncludeTitle = false;//指定要排序的单元格范围并进行排序
workbook.DataSorter.Sort(worksheet.Range["A2:A9"]);//保存文档
workbook.SaveToFile(@"SortByValues.xlsx", ExcelVersion.Version2010);
2.基于单元格背景颜色
//创建Workbook实例
Workbook workbook = new Workbook();
//加载Excel文档
workbook.LoadFromFile(@"SortData.xlsx");//获取第二个工作表
Worksheet worksheet = workbook.Worksheets[1];//指定需要排序的列索引以及排序的方式 (基于单元格的背景颜色)
SortColumn column = workbook.DataSorter.SortColumns.Add(0, SortComparsionType.BackgroundColor, OrderBy.Top);
//指定背景颜色
column.Color = Color.Red;//排序是否包含标题(默认第一个数据为标题,不会对它进行排序)
workbook.DataSorter.IsIncludeTitle = false;//指定要排序的单元格范围并进行排序
workbook.DataSorter.Sort(worksheet.Range["A2:A8"]);//保存文档
workbook.SaveToFile(@"SortByCellColor.xlsx", ExcelVersion.Version2010);
3.基于单元格的字体颜色
//创建Workbook实例
Workbook workbook = new Workbook();
//加载Excel文档
workbook.LoadFromFile(@"SortData.xlsx");//获取第三个工作表
Worksheet worksheet = workbook.Worksheets[2];//指定需要排序的列索引以及排序的方式 (基于单元格的字体颜色)
SortColumn column = workbook.DataSorter.SortColumns.Add(0, SortComparsionType.FontColor, OrderBy.Bottom);
//指定字体颜色
column.Color = Color.Red;//排序是否包含标题(默认第一个数据为标题,不会对它进行排序)
workbook.DataSorter.IsIncludeTitle = false;//指定要排序的单元格范围并进行排序
workbook.DataSorter.Sort(worksheet.Range["A2:A8"]);//保存文档
workbook.SaveToFile(@"SortByFontColor.xlsx", ExcelVersion.Version2010);
C# 对Excel表格中的数据进行排序相关推荐
- 【唠叨两句】如何将一张树型结构的Excel表格中的数据导入到多张数据库表中...
小弟昨天遇到一个相对比较棘手的问题,就像标题说的那样.如何将一张树型结构的Excel表格中的数据导入到多张数据库表中,在现实中实际是七张数据库表,这七张表之间有着有着相对比较复杂的主外键关系,对于我这 ...
- python读取excel表格-python读取excel表格中的数据
使用python语言实现Excel 表格中的数据读取,需要用到xlrd.py模块,实现程序如下: import xlrd #导入xlrd模块 class ExcelData(): def __init ...
- python3读取excel数据-python3 读取Excel表格中的数据
需要先安装openpyxl库 通过pip命令安装: pip install openpyxl 源码如下: #!/usr/bin/python3 #-*- coding:utf-8 -*- import ...
- c 语言如何处理表格文件中的数据库,C#程序从Excel表格中读取数据并进行处理
今天做了一个Excel表格数据处理的事情,因为数据量表较大(接近7000条)所以处理起来有点麻烦,于是写了一个程序, 先将程序记下以便将来查找. using System; using System. ...
- 查询oracle数据库的表格数据类型,excel表格中如何查询数据库数据类型-我想把excel表格中的数据导入oracle数据库中,想在......
在excel表里,什么是:字段.记录.数据类型.多工... declare @t table(id numeric(18,2)) insert into @t SELECT col1 FROM ...
- excel打开空白不显示内容 没有隐藏_办公软件操作技巧097:如何隐藏excel表格中没有数据的空白区域...
在日常工作中,我们编辑好了excel表格以后,有时为了突出显示表格数据内容,或者为了后期编辑表格数据区时不受干扰等原因,可以把表格中没有数据的多余空白区域隐藏起来,如下图一为数据正常显示,图二为隐藏空 ...
- matlab表格三维柱状图,excel制作四维数据表格-excel三维柱形图 ,请问如何根据excel表格中的数据......
Excel 什么是三维,四维表格 Excel表格中貌似没有三维.四维的概念,非得去解释,那么: 多张二维的表格构成三维的数据.四维只能是多个工作簿了. 怎样用excel制作一个小型数据库表格 Exce ...
- 用matlab处理表格,matlab删除excel表格数据-如何用matlab处理多个excel表格中的数据...
如何用matlab处理多个excel表格中的数据 biao='D:\Program Files\matlab\bin\filename.xls'; A1=xlsread (biao,'Sheet1', ...
- cpp导入excel到mysql_将EXCEL表格中的数据导入mysql数据库表中
本文转载自http://blog.sina.com.cn/s/blog_5d972ae00100gjij.html 今天项目上遇到需要将excel中的数据导入到数据库的classify表中,于是乎拼命 ...
最新文章
- 贵州大学明德学院计算机有多少班级,2014年贵州大学明德学院算机科学及信息系电子信息工程专业介绍...
- IOS NSPredicate 查询、搜索
- 【PAT乙级】1038 统计同成绩学生 (20 分)
- 亚马逊记AWS(Amazon Web Services)自由EC2应用
- 项目war包部署到第三方Tomcat,访问路径必须加上项目名称的坑
- 用python编写杨辉三角金字塔_用python实现三道简单算法题:杨辉三角,蛇形矩阵,金字塔...
- Java命令行界面(第18部分):JCLAP
- Eclipse插件中的SLF4J登录
- solaris php,针对 Solaris 的安装提示
- 亲身经历:一个00后的中专生是怎么在深圳拿到30K(Java后端开发)
- python 基础学习1
- html 伪元素原理,CSS伪类伪元素详解
- 单机游戏合集!12000G!淘宝购!
- Android开发——电话簿
- python数据分析水果_用python解决简单的水果分类问题
- java毕业设计产品销售管理系统Mybatis+系统+数据库+调试部署
- Dominating Patterns UVALive - 4670 AC自动机
- mysql 启动失败 详情_mysql启动失败一例
- ubuntu中无法安装vim
- 技术交流微信群欢迎小伙伴前来交流
热门文章
- OGC入门学习专栏(2.1) - SWE通用数据模型编码标准(写完所有小节再合)
- Android APK加固(加壳)工具
- Linux——服务器文件备份(一)
- C++制作打字小游戏
- dvwa中的xss(跨站脚本)攻击
- 5G技术全面融入ROS2新一代机器人操作系统大量成果推出(2020整理翻译版)
- JavaScript简单随机数去重
- STM32 编码器驱动/旋转编码器旋钮encoder
- 单个数码管动态显示(STM32F103C8T6)
- 御手洗sama 网易宝面试:java程序员(其实我根本不记得我投的是什么了,但是一直问的是java,应该就是java了)...