aardio npoi库操作excel (四)行对象和列操作

文章介绍了如何使用npoi库在Excel中设置行高,包括获取行的初始和结束单元格序号,并展示了设置行高后的效果。接着讲解了如何设置单元格的对齐方式,包括横向和竖向的居中、左对齐和右对齐。最后,文章演示了如何调整列宽,包括隐藏列、设置固定列宽和自动调整列宽。
摘要由CSDN通过智能技术生成

1.在sheet对象下还有一个行对象row,获取到这个属性,我们就可以设置行高,行单元格的初始和结束序号

import console; 
import npoi //导入库

//当前目录如果存在文件则读取,不存在则创建文件,返回工作薄对象
workBook = npoi("/行对象.xlsx") 

//创建工作表
sheet = workBook.sheet("工作表1")

//写入一行数据
sheet.setCellValue("C1",{1,2,3,4,5,6})

//获取第1行对象
row = sheet.row(1)

console.log("第1行初始内容的单元格序号:",row.firstCellNum)
console.log("第1行结束内容的单元格序号:",row.lastCellNum)

//设置行高为50,默认是15磅
row.heightInPoints = 50

workBook.save() //保存到文件
console.pause(true);

效果图:

2.设置了行高后,你的单元格应该是这个样子。它的对齐方式从横向看是左对齐,从竖向看是居中对齐

如果这不是你想要的对齐方式,下面我们来用代码写入的时候设置对齐方式

import npoi //导入库

//当前目录如果存在文件则读取,不存在则创建文件,返回工作薄对象
workBook = npoi("/对齐方式.xlsx") 

//创建工作表
sheet = workBook.sheet("工作表1")

//设置第1行行高
sheet.row(1).heightInPoints = 50

//创建单元格样式
style = workBook.createCellStyle()

//设置单元格横向对齐方式为居中
style.alignment = 2

//设置单元格竖向对齐方式为居中
style.verticalAlignment = 1


//sheet.setCellValue("A1",{1,2,3,4,5},,style)

sheet.setCellValue(1,1,{1,2,3,4,5},,style)


//设置第2行行高
sheet.row(2).heightInPoints = 70

//创建新单元格样式
style = workBook.createCellStyle()

//设置单元格横向对齐方式为右对齐
style.alignment = 3

//设置单元格竖向对齐方式为顶对齐
style.verticalAlignment = 0

sheet.setCellValue("A2",{"aa","bb","abc",6,586},,style)

workBook.save() //保存到文件

效果图:

上面的步骤:

  1. 使用workBook.createCellStyle()创建一个样式

  1. 设置相应的对齐方式,横向style.Alignment,竖向style.VerticalAlignment,它们的值并不需要记住,因为看智能提示很清楚

  1. setCellValue写入内容时将样式传进参数

其它的对齐方式,大家可以自己试试。

3.对应列的操作,下面看如果写入这样一个行内容会怎样?

效果图:

这时的列如果内容超出列宽,超出部分就看不到了。或者一段比较长的文本看上去占用很多列,实际只占一列。对于这样的效果,显然我们并不满意。调整列宽就很有必要了。

import console
import npoi //导入库

//当前目录如果存在文件则读取,不存在则创建文件,返回工作薄对象
workBook = npoi("/列操作.xlsx") 

//创建工作表
sheet = workBook.sheet("工作表1")

sheet.setCellValue("B2",{
123,
"隐藏的列",
"一个较为长的文本",
"这是一段很长的文本,你最好将我设置为自调整列宽"
})

//将C列设置为隐藏列,参数用序号也可以
sheet.setColumnHidden("C")

console.log("D列宽度",sheet.getColumnWidth("D"))

//设置列宽为30
sheet.setColumnWidth("D",30)

//设置E列为自动调整列宽
sheet.autoSizeColumn("E")

console.log("E列宽度",sheet.getColumnWidth("E"))


workBook.save()

console.pause()

调整后效果:

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值