Java 创建、编辑、删除Excel命名区域
Excel命名区域,即对指定单元格区域进行命名,以便对单元格区域引用,如在公式运用中可以引用指定命名区域进行公式操作。在创建命名区域时,可针对整个工作簿来创建,即workbook.getNameRanges().add(),在引用时该命名区域对整个工作簿有效;或者针对指定工作表来创建,即sheet.getNames().add(),在引用时仅对该命名区域所在工作表有效。此外,对Excel中已有的命名区域可对其进行重命名、重新设定单元格引用区域、设置隐藏或显示(注意这里设置的是命名区域的名称隐藏或显示,而非命名区域单元格,设置名称隐藏时,可起到保护引用数据来源的目的)以及删除等操作。下面将通过代码示例介绍操作方法。
程序运行环境:Java、IDEA、jdk1.8.0、无需安装Microsoft Excel
工具:Free Spire.XLS for Java (免费版)
Jar获取及导入:通过官网下载,并解压将lib文件夹下的jar文件导入java程序。
参考如下jar导入效果:
Java 代码示例
1. 创建命名区域
1.1 全局命名区域
import com.spire.xls.*;
import com.spire.xls.core.INamedRange; public class NamedRange1 {
public static void main(String[] args) {
//创建实例,加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx"); //获取第1个工作表
Worksheet sheet1 = wb.getWorksheets().get(0);
//创建全局命名
INamedRange namedRange1 = wb.getNameRanges().add("Range1");
namedRange1.setRefersToRange(sheet1.getCellRange("C2:C3"));
INamedRange namedRange2 = wb.getNameRanges().add("Range2");
namedRange2.setRefersToRange(sheet1.getCellRange("C4:C5")); //获取第2个工作表,在单元格公式中引用命名区域
Worksheet sheet2 = wb.getWorksheets().get(1);
sheet2.getCellRange("B1").setFormula("=SUM(Range1,Range2)"); //保存文件
wb.saveToFile("NamadRange1.xlsx", ExcelVersion.Version2013);
}
}
全局命名区域创建效果:
1.2 局部命名区域
import com.spire.xls.*;
import com.spire.xls.core.INamedRange; public class NamedRange2 {
public static void main(String[] args) {
//创建实例,并加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("test.xlsx"); //获取第1个工作表
Worksheet sheet = wb.getWorksheets().get(0); //创建局部命名区域
INamedRange namedRange1 = sheet.getNames().add("Range1");
namedRange1.setRefersToRange(sheet.getCellRange("C2:C3"));
INamedRange namedRange2 = sheet.getNames().add("Range2");
namedRange2.setRefersToRange(sheet.getCellRange("C4:C5")); //在公式中引用命名区域
sheet.getCellRange("C6").setFormula("=SUM(Range1,Range2)"); //保存文件
wb.saveToFile("NamedRange2.xlsx", ExcelVersion.Version2013);
}
}
局部命名区域创建效果:
2. 编辑已有命名区域
import com.spire.xls.*;
import com.spire.xls.core.INamedRange; public class ModifyNamedRange {
public static void main(String[] args) {
//创建实例,加载测试文档
Workbook wb = new Workbook();
wb.loadFromFile("NamedRange1.xlsx"); //获取工作表
Worksheet sheet = wb.getWorksheets().get(0);
//获取全局命名区域
INamedRange namedRange = wb.getNameRanges().getByName("Range1");
//获取局部命名区域(对局部命名区域进行相关操作)
//INamedRange namedRange1 = sheet.getNames().getByName("Range1");
namedRange.setName("NewRange");//修改区域名称
namedRange.setRefersToRange(sheet.getCellRange("C2"));//修改单元格引用区域
namedRange.setVisible(false);//隐藏命名区域名称
//wb.getNameRanges().remove("Range2");//删除命名区域 //保存文档
wb.saveToFile("ModifyNamedRange.xlsx");
}
}
编辑效果:
(本文完)
Java 创建、编辑、删除Excel命名区域的更多相关文章
- C# 创建、更改Excel命名区域(NamedRange)
创建命名区域是指给选定的某个单元格或多个单元格区域设置名称,目的是方便我们在文件中的其他地方对该单元格区域进行引用能够简化公式引用或者方便数据管理.下面记录了具体的C#示例代码.这里创建命名区域分为了 ...
- Java 添加、删除Excel表单控件
通过表单控件,用户可以快速地将数据填写到模板文档中,轻松引用单元格数据并与其进行交互.本文通过Java代码示例介绍如何在Excel表格中添加表单控件,包括文本框.单选按钮.复选框.组合框.微调按钮等: ...
- linux初级学习笔记二:linux操作系统及常用命令,文件的创建与删除和命名规则,命令行展开以及linux中部分目录的作用!(视频序号:02_3)
本节学习的命令:tree,mkdir,rmdir,touch,stat,rm 本节学习的技能:Linux中主要的目录作用以及特殊的目录文件: 文件的命名规则,命令行展开: 文件的创建与删除: Linu ...
- Excel命名区域的创建、修改、删除、命名
因工作需要,需要用到 Excel实现多级下拉列表,这是预备知识! 链接地址:http://wenku.baidu.com/link?url=vHkAo25IXo6mabms-Jv0m3T7BRfAMg ...
- Java 创建、刷新Excel透视表/设置透视表行折叠、展开
透视表是依据已有数据源来创建的交互式表格,我们可在excel中创建透视表,也可编辑已有透视表.本文以创建透视表.刷新透视表以及设置透视表的行展开或折叠为例,介绍具体的操作方法. 所需工具:Free S ...
- kafka入门2:java 创建及删除 topic
1.pom <dependency> <groupId>org.apache.kafka</groupId> <artifactId>kafka_2.1 ...
- 一个java创建,删除,构建Jenkins等功能的JenkinsUtil工具类
package com.vip.webpagetest.utils; import java.io.InputStream;import java.util.ArrayList;import java ...
- Hbase实验:java创建和删除table
开启zookeeper.hadoop.hbase: 打开eclipse创一个java project,然后导入所需jar包: 写好java代码,运行create,然后去hbase shell里查看: ...
- 3、File类之创建、删除、重命名、判断方法
一般我们调用内置类的方法,都是指调用其成员方法,故而以下几种方法都是File类的成员方法,常用的有以下3种, 分别是 //创建 public boolean createNewFile() publi ...
随机推荐
- 吴裕雄--天生自然python学习笔记:案例:用正则表达式查找邮件账号
抓取万水书苑“ ht甲://www.w sbookshow.com/ ”网站中的所有 E-mai l 账号. import requests,re regex = re.compile('[a-zA- ...
- C语言学习笔记之获取文件长度
本文为原创文章,转载请标明出处 #include <stdio.h> #include <stdlib.h> int main() { FILE *inputFile; inp ...
- Nginx笔记总结一:基本安装和配置
1. Nginx安装 下载地址和安装依赖包 http://nginx.org/download/nginx-1.9.14.tar.gz yum -y install pcre pcre-devel z ...
- Spring+Struts2+Mybatis整合
1. 创建项目 2. 添加Spring能力 使用MyEclipse自动加载Struts2和Spring的jar包和配置文件,并在web.xml文件中添加上下文和监听器 web.xml文件如下: < ...
- win10 安装VMware Workstation Pro提示无法在windows上运行
win10 安装vm无法在windows上运行 之前还可以用 网上搜了一下 要安装最新15.5.0就不会报错了 没毛病!! 不想注册下载 百度网盘(2019年9月19日版本) https://pan ...
- Python字符串编码——Unicode
ASCII码 我们知道,在计算机内部,所有的信息最终都表示为一个二进制的字符串.每一个二进制位(bit)有0和1两种状态,因此八个二进制位就可以组合出256种状态,这被称为一个字节(byte).也就是 ...
- 一劳永逸的解决AFNetworking3.0网络请求问题
AFNetworking在iOS网络请求第三方库中占据着半壁江山,前段时间将AFNetworking进行了3.0版本的迁移,运用面向对象的设计将代码进行封装整合,这篇文章主要为还在寻找AFNetwor ...
- 15.uboot study 串口初始化
3. 串口初始化 4. 代码实现 关于串口 对于嵌入式设备的开发,刚开始好多设备都无法使用,由于无法获得程序的运行状态,调试程序需要花费好多时间和精力,因此串口对于嵌入式程序的调试的作用显而易见,当串 ...
- sms短信服务
短信服务是app,电商类应用的基础功能.典型场景有: 用户注册,发送验证码 用户找回验证,发送验证码 用户账户异常,发送提示 用户账户变化,通知用户 短信服务开发有几个注意点: 供应商选型 短信模板 ...
- 使用powerdesigner进行数据库设计
powerdesigner安装破解文件:链接:https://pan.baidu.com/s/1oKAdUqTKElQ9d86FV-SDTQ 密码:l4y5 基本操作参考:1.PowerDesigne ...