单元格引用

java读取百万行csv,excel的处理

六眼飞鱼酱① 提交于 2019-11-29 13:15:24
上篇文章中使用opencsv包读取csv格式,如果csv文件内容过大,会导致jvm产生oom的问题,顾修改代码如下 reader = new CSVReaderBuilder(new InputStreamReader(input, fileEncode)).build() //记录column ArrayList columns = new ArrayList<>(); int columnIndex = 0; String[] rowData = reader.readNext(); 复制代码由之前readall 形式改为readnext()一行行读取形式,按行加载至arrayList,按需处理完在对list进行clear()操作,释放内存,再进行readnext加载。。 excel篇:之前采用 poi用户模式读取excel,会极大的消耗内存,查阅资料poi官方推荐使用事件模式读取贴上代码 xls import org.apache.logging.log4j.LogManager;import org.apache.logging.log4j.Logger;import org.apache.poi.hssf.eventusermodel.*;import org.apache.poi.hssf.eventusermodel.dummyrecord

Markdown常用方法整理

醉酒当歌 提交于 2019-11-29 05:04:31
标题 段落 列表 引用 代码块 链接 图片 一.标题 一级标题 二级标题 三级标题 四级标题 五级标题 六级标题 二.段落 1.换行: 2.加粗: 3.分割线: 4.删除线: deprecated 5.下划线: 下划线 三.列表 第一项 nest2 nest3 第二项 第三项 四.链接 马克思曾说:xxx 五.代码块 public void test(String name){ System.out.println("xxx"); } 六.链接 菜鸟教程 七.图片 八.表格 表头 表头 表头 单元格 单元格 xxx 单元格 单元格 xxx Ctrl Ctrl color 来源: https://www.cnblogs.com/YaoFrankie/p/11456223.html

Java Swing的Excel电子表格控件JExcel

独自空忆成欢 提交于 2019-11-28 20:10:05
JExcel提供了简单和有效的方法整合Excel到Java Swing应用程序中,可以很容易地使用完整的Java Excel API进行显示、创建、打印、读写或修改Excel 工作薄,还可以进行自定义多种单元格属性,包含文本字体、单元格背景和边框、文本显示位置和顺序等。原文来自http://www.fanganwang.com/product/2803 具体功能: 可在Excel 工作薄上进行任何操作:创建、打开、保存、修改(不仅是工作薄数据,还包含名字、标题、作者、文件路径、密码保护、大小、放大、状态等) 支持通过坐标、地址或名字引用单元格,设置和得到值 自定义单元格外观 合并和恢复单元格 查找单元格值 支持通过工作表名或索引来获取工作表,获取工作薄中的所有工作表,支持添加新的工作表 支持改变单元格数字格式 自定义文本位置和方向 字体自定义:名字、大小、颜色等 边框外观自定义:边框颜色、线条样式 控件下载请到龙博方案网 来源: oschina 链接: https://my.oschina.net/u/1583264/blog/274781

学不会这几个操作,面试时千万别说自己精通Excel

断了今生、忘了曾经 提交于 2019-11-28 18:40:53
很多人在面试数据分析岗位,或者是运营、财务等,甚至是与数据毫无相关的岗位时,都会在简历上填上这么一句:“ 本人精通office,能够熟练运用exce l”,似乎觉得用excel做个图表就算是精通了。 然而殊不知很多大厂的HR最讨厌的就是看到这一句话,不会VBA、不会函数公式、不会数据透视表,你还敢说自己会用excel?赶紧走人! 其实这是因为很多人对于excel还有着很多的误区,认为Excel就是一个统计软件,学学加减乘除就行了。但其实,Excel能做的东西比你想象中的多太多了,除了你每天用的“Ctrl+C”和“Ctrl+V”,Excel也可以是数据库,也可以插入统计图当做可视化工具来用,应付你日常的工作汇报绰绰有余了。只要你把数据透视表和统计图玩转了,也能做出好看的可视化效果,工作表现也能在一若干人等中脱颖而出。 而如果你想要达到精通excel的程度,起码要学会下面这三个神操作: 一、数据透视表 数据透视表的重要程度我就不详细说了,它的重要程度实在是太大了,无论你是想做报表,还是做数据可视化,还是进行财务汇总,都离不开这个强大无比的功能。 比如我想对以下的人员名单,每个人建立一个工作表,要怎么操作呢? 操作步骤: 1、首先选中A列数据列,点击菜单栏中的 【插入】-【表格】-【数据透视表】 ,选择现有工作表,选中一个区域位置,点击确定 2、把 【姓名】拖入【筛选】 页 3

Excel 动态图表设计

偶尔善良 提交于 2019-11-28 06:10:42
涉及函数 1. OFFSET(reference,rows,cols,height, width ) Reference 作为偏移量参照系的引用区域。Reference 必须为对单元格或相连单元格区域的引用;否则,函数 OFFSET 返回错误值 #VALUE!。 Rows 相对于偏移量参照系的左上角单元格,上(下)偏移的行数。如果使用 5 作为参数 Rows,则说明目标引用区域的左上角单元格比 reference 低 5 行。行数可为正数(代表在起始引用的下方)或负数(代表在起始引用的上方)。 Cols 相对于偏移量参照系的左上角单元格,左(右)偏移的列数。如果使用 5 作为参数 Cols,则说明目标引用区域的左上角的单元格比 reference 靠右 5 列。列数可为正数(代表在起始引用的右边)或负数(代表在起始引用的左边)。 Height 高度,即所要返回的引用区域的行数。Height 必须为正数。 Width 宽度,即所要返回的引用区域的列数。Width 必须为正数。 OFFSET(基点单元格,移动的行数,移动的列数,所要引用的高度,所要引用的宽度) 例: =OFFSET(A3,2,3,1,1) A3是基点单元格, 2是正数,为向下移动2 行,负为向上移动2 行 3是正数,为向右移动3列,负为向左移动3列 1是引用 1 个单元格的高度 1 是引用 1 个单元格的宽度

报表开发思路之报表规则认定以及层次坐标

旧街凉风 提交于 2019-11-28 05:22:56
第一节:扩展规则 单元格进行扩展时,主单元格或同级别单元格被拉大成合并单元格,附属单元格被动复制;上主格扩展时(横向扩展),附属格被横向同步复制;左主格扩展时(纵向扩展),附属单元格纵向被同步复制。 扩展类型包含:横向扩展、纵向扩展、不可扩展 三种类型; 延伸扩展概念:跟随扩展、多层扩展、交叉扩展 跟随扩展 :当一个单元格扩展时,它可以带动其他单元格跟随它一同扩展。 多层扩展 :一个单元格可能既跟随其他单元格扩展(做为其他单元格的附属格),同时也自身扩展(做为另外单元格的主格)。 交叉扩展 :同一报表中可能同时有纵向扩展格和横向扩展格,如果它们的子格有重叠部分,则这些子格就既有左主格又有上主格,在扩展时会被既向下又向右复制,形成一片矩形单元格区域,从而做到交叉扩展。 例如下图所示: 第二节:引用规则 单元格扩展时,附属单元格可以动态引用主单元格的值。随着主单元格扩展,附属单元格被复制到不同的新的位置,对主单元格的引用也相应的发生变化。 例如:=A2*3 (其中 A2为扩展主格) 第三节:统计规则 单元格扩展时,附属单元格如采用缺省的集合表达式,则缺省统计所属主格区域范围内的所有的目标单元格的值 例如:SUM(C4{}) 第四节:主附规则 1 、 左主格认定 即跟随着执行纵向扩展;左主格的认定是从当前单元格依次向左反推查找。假设当前单元格为C2,左边单元格为B2 ①

报表开发思路之主格(主格属性)

大兔子大兔子 提交于 2019-11-28 03:14:29
单元格的扩展是针对具体的某一个单元格,当报表主体中绑定了多个单元格时,单元格间会天然存在某种关系,使单元格间存在数据过滤关系,并且跟随扩展,这就是主子格,前面的单元格称之为主格,后面的单元格称之为子格,也就是说子格的数据会根据主格的数据进行过滤分组显示,并且还会跟随主格的扩展方向而扩展;主格与子格之间是相对关系,不存在绝对的主子关系;一个单元格既可以作为某个单元格的子格,也可以作为某个单元格的主格;主格分两种:左主格、上主格;下面分别详细讲解左主格、上主格、主子格之间的关系。 第一节:左主格 (1)、当A单元格纵向扩展时,B单元格被同步复制,此时A单元格称为B单元格的左主格,B单元格称为A单元格的附属单元格(或称为子格); (2)、左主格扩展时,附属单元格(子格)被纵向同步复制,并且与左主格的相对位置保持不变,附属单元格(子格)本身的附属单元格也将被复制。复制时,复制出来的新的单元格的所有属性都引用被复制单元格的属性。 (3)、在默认的情况下,一个纵向扩展的单元格,当其纵向扩展时,其右边的单元格会自动跟随它扩展。即其右边的单元格自动是其附属格(子格)。或者说,一个单元格,会把它左边第一个(从右向左数)纵向扩展格作为其左 主格,跟随着它进行纵向扩展。 (4)、在实际应用中,当单元格纵向扩展时,有时候需要跟着被复制的单元格不一定在该单元格的右边,此时需要对被动复制的单元格设置左主格。

报表开发思路之单元格!(单元格扩展属性)

安稳与你 提交于 2019-11-28 00:20:41
单元格 一、单元格 报表是有行列整齐的格子组成,这些格子我们统称为单元格,通过所有的单元格就组成了报表。类似于Excel表格中的每个格子,也相当于HTML网页中TABLE表格的TD单元格; 二、合并单元格 多个连续的单元格通过合并操作后,显示为一个大的格子,合并后的格子称为合并单元格; 三、单元格属性值和表达式 在单元格的属性中,基本包含单元格的显示值、单元格的数据值、预警变色、超链接属性(报表钻取);在这些属性中,大部分是可以自定义表达式的,在计算显示报表的时候,动态执行计算相关的属性具体值。作为表达式时是以"="字符开始的字符串。 四、数据源 用于定义报表数据来源的一个SQL语句字符串表达式;一个报表中可以定义多个数据源,数据源自己的SQL语句表达式字符串中可以使用参数(设计器中定义输入变量参数,由WEB前台传入对应的参数值)来过滤SQL语句所获取的数据; 五、参数 获取数据前用于过滤报表数据的变量,主要应用于数据源SQL语句的where条件中的变量参数的替换;从而来实现数据的筛选过滤功能; 六、内嵌控件 报表中需要使用到图片、条码(支持二维码)、图表(柱状、曲线、饼状);通过内嵌控件的属性表达式来获取相关的数据,生成对应的对象。 七、单元格属性 单元格自身所拥有的一些属性;包含外观属性、 外观属性:字体样式、边框样式、字体颜色、背景颜色、斜线、文本对齐方式、 单元格大小

C# 复制Excel单元格格式

丶灬走出姿态 提交于 2019-11-27 21:07:34
本文将介绍通过C# 复制Excel单元格格式的方法,包括复制单元格中的字体、字号、字体加粗、倾斜、单元格背景色、字体颜色、单元格数字格式、单元格文字方向、文字旋转、下划线、单元格对齐方式、单元格边框等。C# 复制Excel工作表可参考 这篇文章 。 使用工具: Free Spire.XLS for .NET(免费版) dll 文件获取及导入方法: 方法 1 : 可通过 官网下载 。下载后,解压文件,打开bin文件夹,安装。安装后,在程序中添加引用Spire.Xls.dll文件(程序集文件在安装路径下的bin文件夹中获取)。添加引用效果如下图: 方法 2 : 可通过 Nuget 下载。 C# 代码示例 测试文档如下: 将sheet1中A列的所有单元格格式复制到sheet2中的C列。 using Spire.Xls; namespace CopyCellsFormat { class Program { static void Main(string[] args) { //加载测试文档 Workbook workbook = new Workbook(); workbook.LoadFromFile("test.xlsx"); //分别获取第一个工作表和第二个工作表 Worksheet sheet1 = workbook.Worksheets[0]; Worksheet sheet2

Visual Studio Tools for Office: Using C# with Excel, Word, Outlook, and InfoPath【13】

你说的曾经没有我的故事 提交于 2019-11-27 14:40:43
应用程序对象的操作 本章将介绍从Application对象开始的Excel对象模型中的一些主要对象。 Excel对象模型中的主要对象有许多方法和属性,完全描述这些对象超出了本书的范围。相反,本章重点介绍最常用的方法和属性。 Application对象在Excel对象模型中具有最大数量的方法,属性和任何对象的事件。 Application对象也是Excel对象模型层次结构中的根对象。您可以通过从Application对象开始访问对象模型中的所有其他对象,并访问其属性及其返回的对象的属性。 Application对象还具有许多有用的应用程序级设置。 控制Excel的屏幕更新行为 当您的代码对工作簿执行一组更改时,您可能需要将ScreenUpdating属性设置为false,以防止Excel在代码运行时更新屏幕。将其设置回TRue将刷新屏幕,并允许Excel继续更新屏幕。 除了在代码运行时不强制用户观看Excel更改单元格的优点之外,ScreenUpdating属性证明对加速代码非常有用。每次操作后重新画屏可能相当昂贵。确保在您的代码完成时将此属性设置为true,用户将留下不绘制的Excel。如下所示,try-finally块是确保即使抛出异常也会重置属性的方便方法。 一个更好的约定,而不仅仅是将ScreenUpdating属性设置为true