
、选中需要分类汇总的列:选择菜单的“数据”,单击升序排序。
2、分类汇总:选择菜单的“数据”,单击“分类汇总”。
3、在分类汇总对话框选择相应的项:分类字段选择要分类汇总的列名,这里选择“班级”;选定汇总项勾选“语数英”三列。
4、分类汇总图总览:按照如上步骤得出分类汇总后的界面图,如下图所示。单击左侧的1,2,3,可分别显示汇总的项目。
5、查看示例:选择2,显示如下,表明:按照语数英分类的所有班级的汇总成绩。、建立数据透视表
如下所示,库管部在2017年登记了1000次(由于数据太多,截图中将中间部分省略)物料领取记录,由于物料消耗巨大,公司准备统计各部门的使用数量。
点击表格中任意单元格,点击“插入”-“数据透视表”。
QQ群:316492581下载练习课件
在d出的对话框中,需要注意自动扩展的区域是否是我们想要设置的区域。在下方可以选择数据透视表建立的位置,瓶子建立在新工作表。
确定后在新的工作表中插入了数据透视表1。点击数据透视表,右边便会出现设置对话框。下面就很简单啦,只需要将上方的字段按照自己的需要拖动到下方,即可自动完成数据汇总。
二、按需汇总数据
通常,我们做出来的报表,会拿给不同的领导、不同的部门使用。不同的领导,不同的部门对表格数据的关注点可能不同。譬如当前的物料,领导可能关系的是不同部门的领用量差别,也可能关心的是不同月份物料的领用量变化,也可能关心的是各种物料领用量排序。同样的数据就需要按照不同的方式的汇总,你是不是很崩溃?其实,有了数据透视表,就相当简单啦。
这里瓶子例举三种不同需求的数据汇总。
1查看不同部门不同人员的领取数量
将”部门”和”姓名”分别拖动到行标签,”领取数量”拖动到数值。此时在左边已经自动形成了汇总表。
此时的汇总表并不是常规的表格形式。点击透视表中任意单元格,点击“设计”-“报表布局”-“以表格形式显示”。
此时表格如下所示,左边有伸缩折叠按钮,这并不是我们通常需要的样式。点击“选项”中的“+/-按钮”即可关闭。
关闭折叠/打开按钮的表格如下所示:
对于第一列的“部门”,不同公司有不同的要求,如果需要将相同部门进行合并显示(当前属于非重复显示,单元格未合并),右键单击透视表,选择“数据透视表选项”,在对话框中勾选“合并且居中排列带标签的单元格”。
此时表格样式如下:
而有的公司,需要将相同部门进行重复显示。点击透视表,在“设计”选项卡中点击“报表布局”-“重复所有项目标签”。
这时表格的样式如下所示:
2查看不同月份不同人员的领取量
右键单击透视表,点击“显示字段列表”。
在字段列表中,取消勾选“部门”,将“领取日期”拖到行标签下。结果如下所示。
在日期列单击右键,选择“创建组”。
在d出的对话框中,选择“月”,点击确定。
此时表格如下,按月显示。
按照前面的方法,我们可以将相同的月份合并显示如下:
在日期列单击右键,选择分类汇总“领取日期”。
最终表格如下所示,
3分部门查看每人领取次数
右键单击透视表,调出字段列表,取消勾选“日期”,将“部门”拖动到报表筛选下。结果如下:
右键单击“求和项:领取数量”列,选择“值字段设置”。
在d出的对话框中选择“计数”。点击确定。
此时报表如下,点击A1-B1单元格的下拉菜单,即可筛选部门,分部门查看员工的领取次数。
筛选出人事部,结果如下:
由于篇幅有限,瓶子在这里只给大家介绍了三种情况,其实数据透视表的作用非常多,包括拆分、排序、筛选、实时更新数据、制作动态图表等等,大家可以自己先试一试,后面会给大家推这些教程。
三、快速拆分工作表
前面的 *** 作,都只是根据领导的不同需求进行不同方式的数据汇总。如果我们的数据需要按照部门进行拆分后再拿给不同部门的看呢?
点击透视表中的任意单元格,点击“选项”-“显示报表筛选页”。
在d出的对话框中可以看到将“部门”作为拆分字段,是因为在前面的 *** 作中,我们只把“部门”拖进了报表筛选下。数据透视拆分工作表是建立在筛选基础上的,需要按哪种条件拆分则就需要提前按哪种条件筛选。
点击确定后,可以看到表格下方,出现了以部门命名的工作表,就是拆分后的效果。
此时,若表格需要打印出来分发给各部门,就可以直接打印啦。但若需要直接发电子表格给各部门,我们就还需要多一步 *** 作,为什么呢?如下所示,点击财务后方的下拉菜单,还是可以看到所有部门的数据。
按住ctrl键,依次点击下方每个部门的工作表名称,然后按ctrl+A快捷键,全选整个工作表,按ctrl+C复制。
单击右键,选择性粘贴成值。
此时可以看到每个工作表都只显示一个部门的数据。就可以直接发电子档给不同的部门啦!
大家看到这里,有没有觉得excel真是
Excel的两种导出入门方法(JAVA与JS)
最近在做一个小项目作为练手,其中使用到了导出到Excel表格,一开始做的是使用JAVA的POI导出的,但因为我的数据是爬虫爬出来的,数据暂时并不保存在数据库或后台,所以直接显示在HTML的table,需要下载时又要将数据传回后台然后生成Excel文件,最后再从服务器下载到本地,过程几度经过网络传输,感觉比较耗时与浪费性能,于是想着在HTML中的Table直接导到Excel中节约资源
JAVA导出EXCEL(xls)
导出Excel用的插件是apache的poijar,maven地址如下
<dependency>
<groupId>orgapachepoi</groupId>
<artifactId>poi</artifactId>
<version>317</version></dependency>
1 简单应用
先来个简化无样式的Excel导出,由于我的数据存在JSON中,所以形参是JSONArray,朋友们根据自己的实际数据类型(Map,List,Set等)传入即可 ,代码如下
/
创建excel并填入数据
@author LiQuanhui
@date 2017年11月24日 下午5:25:13
@param head 数据头
@param body 主体数据
@return HSSFWorkbook
/
public static HSSFWorkbook expExcel(JSONArray head, JSONArray body) { //创建一个excel工作簿
HSSFWorkbook workbook = new HSSFWorkbook(); //创建一个sheet工作表
HSSFSheet sheet = workbookcreateSheet("学生信息");
//创建第0行表头,再在这行里在创建单元格,并赋值
HSSFRow row = sheetcreateRow(0);
HSSFCell cell = null; for (int i = 0; i < headsize(); i++) {
cell = rowcreateCell(i);
cellsetCellValue(headgetString(i));//设置值
}
//将主体数据填入Excel中
for (int i = 0, isize = bodysize(); i < isize; i++) {
row = sheetcreateRow(i + 1);
JSONArray stuInfo = bodygetJSONArray(i); for (int j = 0, jsize = stuInfosize(); j < jsize; j++) {
cell = rowcreateCell(j);
cellsetCellValue(stuInfogetString(j));//设置值
}
} return workbook;
}
创建好Excel对象并填好值后(就是得到workbook),就是将这个对象以文件流的形式输出到本地上去,代码如下
/
文件输出
@author LiQuanhui
@date 2017年11月24日 下午5:26:23
@param workbook 填充好的workbook
@param path 存放的位置
/
public static void outFile(HSSFWorkbook workbook,String path) {
OutputStream os=null; try {
os = new FileOutputStream(new File(path));
workbookwrite(os);
} catch (FileNotFoundException e1) {
e1printStackTrace();
} catch (IOException e) {
eprintStackTrace();
} try {
osclose();
} catch (IOException e) {
eprintStackTrace();
}
}
至此Excel的导出其实已经做完了。
2 添加样式后导出
但通常这并不能满足我们的需求,因为通常是需要设置Excel的一些样式的,如字体、居中等等,设置单元格样式主要用到这个类(HSSFCellStyle)
HSSFCellStyle cellStyle = workbookcreateCellStyle();
现在说说HSSFCellStyle都能干些什么
HSSFCellStyle cellStyle = workbookcreateCellStyle();//创建单元格样式对象1设置字体
HSSFFont font = workbookcreateFont(); //fontsetFontHeight((short)12);//这个设置字体会很大
fontsetFontHeightInPoints((short)12);//这才是我们平常在Excel设置字体的值
fontsetFontName("黑体");//字体:宋体、华文行楷等等
cellStylesetFont(font);//将该字体设置进去2设置对齐方式
cellStylesetAlignment(horizontalAlignment);//horizontalAlignment参考下面给出的参数
//以下是最常用的三种对齐分别是居中,居左,居右,其余的写代码的时候按提示工具查看即可
HorizontalAlignmentCENTER
HorizontalAlignmentLEFT
HorizontalAlignmentRIGHT3设置边框
cellStylesetBorderBottom(border); // 下边框
cellStylesetBorderLeft(border);// 左边框
cellStylesetBorderTop(border);// 上边框
cellStylesetBorderRight(border);// 右边框
//border的常用参数如下
BorderStyleNONE 无边框
BorderStyleTHIN 细边框
BorderStyleMEDIUM 中等粗边框
BorderStyleTHICK 粗边框//其余的我也描述不清是什么形状,有兴趣的到时可以直接测试
在经过一系列的添加样式之后,最后就会给单元格设置样式
cellsetCellStyle(cellStyle);
3 自动调整列宽
sheetautoSizeColumn(i);//i为第几列,需要全文都单元格居中的话,需要遍历所有的列数
4 完整的案例
public class ExcelUtils { /
创建excel并填入数据
@author LiQuanhui
@date 2017年11月24日 下午5:25:13
@param head 数据头
@param body 主体数据
@return HSSFWorkbook
/
public static HSSFWorkbook expExcel(JSONArray head, JSONArray body) {
HSSFWorkbook workbook = new HSSFWorkbook();
HSSFSheet sheet = workbookcreateSheet("学生信息");
HSSFRow row = sheetcreateRow(0);
HSSFCell cell = null;
HSSFCellStyle cellStyle = workbookcreateCellStyle();
setBorderStyle(cellStyle, BorderStyleTHIN);
cellStylesetFont(setFontStyle(workbook, "黑体", (short) 14));
cellStylesetAlignment(HorizontalAlignmentCENTER);
for (int i = 0; i < headsize(); i++) {
cell = rowcreateCell(i);
cellsetCellValue(headgetString(i));
cellsetCellStyle(cellStyle);
}
HSSFCellStyle cellStyle2 = workbookcreateCellStyle();
setBorderStyle(cellStyle2, BorderStyleTHIN);
cellStyle2setFont(setFontStyle(workbook, "宋体", (short) 12));
cellStyle2setAlignment(HorizontalAlignmentCENTER); for (int i = 0, isize = bodysize(); i < isize; i++) {
row = sheetcreateRow(i + 1);
JSONArray stuInfo = bodygetJSONArray(i); for (int j = 0, jsize = stuInfosize(); j < jsize; j++) {
cell = rowcreateCell(j);
cellsetCellValue(stuInfogetString(j));
cellsetCellStyle(cellStyle2);
}
} for (int i = 0, isize = headsize(); i < isize; i++) {
sheetautoSizeColumn(i);
} return workbook;
} /
文件输出
@author LiQuanhui
@date 2017年11月24日 下午5:26:23
@param workbook 填充好的workbook
@param path 存放的位置
/
public static void outFile(HSSFWorkbook workbook,String path) {
OutputStream os=null; try {
os = new FileOutputStream(new File(path));
workbookwrite(os);
} catch (FileNotFoundException e1) {
e1printStackTrace();
} catch (IOException e) {
eprintStackTrace();
} try {
osclose();
} catch (IOException e) {
eprintStackTrace();
}
} /
设置字体样式
@author LiQuanhui
@date 2017年11月24日 下午3:27:03
@param workbook 工作簿
@param name 字体类型
@param height 字体大小
@return HSSFFont
/
private static HSSFFont setFontStyle(HSSFWorkbook workbook, String name, short height) {
HSSFFont font = workbookcreateFont();
fontsetFontHeightInPoints(height);
fontsetFontName(name); return font;
} /
设置单元格样式
@author LiQuanhui
@date 2017年11月24日 下午3:26:24
@param workbook 工作簿
@param border border样式
/
private static void setBorderStyle(HSSFCellStyle cellStyle, BorderStyle border) {
cellStylesetBorderBottom(border); // 下边框
cellStylesetBorderLeft(border);// 左边框
cellStylesetBorderTop(border);// 上边框
cellStylesetBorderRight(border);// 右边框
}
}
POI的功能其实还是很强大的,这里只介绍了Excel的一丁点皮毛给入门的查看,如果想对Excel进行更多的设置可以查看下面的这篇文章,有着大量的使用说明。
空谷幽澜的POI使用详解
JS导出EXCEL(xls)
java的Excel导出提供了强大的功能,但也对服务器造成了一定资源消耗,若能使用客户端的资源那真是太好了
1 简单应用
JS的导出Excel非常简单,只需要引用Jquery和tableExportjs并设置一个属性即可
<script src="<%=basePath%>/static/js/tableExportjs" type="text/javascript"></script><script type="text/javascript">
function exportExcelWithJS(){ //获取要导出Excel的表格对象并设置tableExport方法,设置导出类型type为excel
$('#tableId')tableExport({ type:'excel'
});
}</script><button class="btn btn-primary" type="button" style="float: right;" onclick="exportExcelWithJS()">下载本表格</button>
JS的导出就完成了,是不是特别简单
2 进阶应用
但上面仅仅是个简单的全表无样式的导出
这tableExportjs还有一些其他功能,忽略行,忽略列,设置样式等,属性如下
<script type="text/javascript">
function exportExcelWithJS(){ //获取要导出Excel的表格对象并设置tableExport方法,设置导出类型type为excel
$('#tableId')tableExport({ type:'excel',//导出为excel
fileName:'2017工资表',//文件名
worksheetName:'11月工资',//sheet表的名字
ignoreColumn:[0,1,2],//忽略的列,从0开始算
ignoreRow:[2,4,5],//忽略的行,从0开始算
excelstyles:['text-align']//使用样式,不用填值只写属性,值读取的是html中的
});
}</script>
如上既是JS的进阶导出, *** 作简单,容易上手
但有个弊端就是分页的情况下,只能导出分页出的数据,毕竟这就是导出HTML内TABLE有的东西,数据在数据库或后台的也就无能为力,所以这个适合的是无分页的TABLE导出
3 额外说明
tableExportjs是gitHub上的hhurz大牛的一个开源项目,需要下载该JS的可以点击链接进入gitHub下载或在我的百度网盘下载 密码:oafu
tableExportjs不仅仅是个导出Excel的JS,他还可以导出CSV、DOC、JSON、PDF、PNG、SQL、TSV、TXT、XLS (Excel 2000 HTML format)、XLSX (Excel 2007 Office Open XML format)、XML (Excel 2003 XML Spreadsheet format)、XML (Raw xml)多种格式,具体使用可以参考hhurz的使用介绍
本人在之前找了好几个导出Excel的都有各种各样的问题(乱码,无响应,无样式),这个是目前找到最好的一个了,能解决乱码问题,能有样式,非常强大
这个文件里面包含了很多的自定义函数,
例如 INPUT
LOOKUPDATEANDTIME
REPORTYEAR
MONTHNUMBER
REPORTDAY
这些都不是EXCEL的默认函数,
是通过VB代码写的,
你可以考虑将原表格另存,也不要单独复制一个表格,
1、2017年湖南公务员考试公告将会于2017年3月上旬发布,职位表也会随之发布,考生可以参考2016湖南公务员考试职位表来确定自己的报考职位表。加强备考,为自己的2017年湖南公务员考试增加一份机会!以下是2016年湖南公务员考试职位表信息:
2、2016年湖南公务员考试公告已于3月10日晚发布,2016年湖南省全省共计划招考公务员7080名,其中省直党政群机关(含省垂直管理单位)876名、市县乡党政群机关4577名、法院系统674名、检察院系统433名、选调生520名。湖南省2016年公务员考试录用3月22日开始报名,4月23日笔试。湖南***才网、湖南省人事考试网湖南省公务员考试报名服务平台报名。在职公务员或参照公务员法管理单位人员不能报考。
3、2016年湖南省公务员考试职位表(总表下载)
2016湖南公务员考试职位表(省直)(招录876人)(职位分析)
2016湖南公务员考试职位表(选调生)(招录520人)
2016湖南公务员考试职位表(法院)(招录674人)(职位分析)
2016湖南公务员考试职位表(检察院)(招录433人)(职位分析)
2016湖南公务员考试职位表(长沙)(招录249人)(职位分析)
2016湖南公务员考试职位表(邵阳)(招录352人)(职位分析)
2016湖南公务员考试职位表(常德)(招录561人)(职位分析)
2016湖南公务员考试职位表(娄底)(招录84人)(职位分析)
2016湖南公务员考试职位表(株洲)(招录177人)(职位分析)
2016湖南公务员考试职位表(永州)(招录545人)(职位分析)
2016湖南公务员考试职位表(衡阳)(招录296人)(职位分析)
2016湖南公务员考试职位表(岳阳)(招录330人)(职位分析)
2016湖南公务员考试职位表(益阳)(招录368人)(职位分析)
2016湖南公务员考试职位表(湘潭)(招录219人)(职位分析)
2016湖南公务员考试职位表(怀化)(招录560人)(职位分析)
2016湖南公务员考试职位表(湘西)(招录314人)(职位分析)
2016湖南公务员考试职位表(郴州)(招录300人)(职位分析)
2016湖南公务员考试职位表(张家界)(招录222人)(职位分析)
2016湖南公务员考试职位表(烟草局)(招录271人)
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)