用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行

用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行,第1张

/

<p>标题:readExcel</p>

<p>描述:读取Excel文件数据</p>

@param excelfilePath Excel文件路径

@param startRow 开始行

@param startCol 开始列

@return List<ArrayList<String>>

@throws IOException

@throws BiffException

/

public List<Map<String, Object>> readExcel(String excelfilePath,int startRow, int startCol)

throws IOException, BiffException {

// 读取xls文件

InputStream ins = new FileInputStream(excelfilePath);

// 设置读文件编码

WorkbookSettings setEncode = new WorkbookSettings();

setEncodesetEncoding("UTF-8");

Workbook rwb = WorkbookgetWorkbook(ins, setEncode);

List<Map<String, Object>> alldata = new ArrayList<Map<String, Object>>();

Map<String, Object> data = null;

alldataclear();

// 获得当前Excel表共有几个sheet

Sheet[] sheets = rwbgetSheets();

// 获得表数

int pages = sheetslength;

// 将excel表中的数据读取出来

// 在从Excel中读取数据的时候不需要知道每个sheet有几行,有那多少列

for (int i = 0; i < pages; i++) {

//这里读取excel中每个sheet的数据,Sheet sheet = rwbgetSheet(i); 读取第二个sheet就是getSheet(1);

Sheet sheet = rwbgetSheet(i);

int cols = sheetgetColumns(); // 列

// 读取每一行对应的列数目

// 循环读取每一行的全部列数目的内容

int rows = sheetgetRows(); // 行

for (int r = startRow; r < rows; r++) {

data = new HashMap<String, Object>();

// 行循环,Excel的行列是从(0,0)开始

for (int c = startCol; c < cols; c++) {

Cell excelRows = sheetgetCell(c, r);

dataput("bgbh", excelRowsgetContents());

}

alldataadd(data);

}

}

insclose();

return alldata;

}

范例1 单元格的引用方法1-1

使用Range属性引用单元格区域

Sub MyRng()

Range("A1:B4, D5:E8")Select

Range("A1")Formula = "=Rand()" ‘单元格中输入“=Rand()”

Range("A1:B4 B2:C6")Value = 10

Range("A1",

"B4")FontItalic = True

End Sub

1-2

使用Cells属性引用单元格区域

Sub MyCell()

Dim i As Byte

For i = 1 To 10

Sheets("Sheet1")Cells(i,

1)Value = I’单元格中输入“i”

Next

End Sub

1-3

使用快捷记号实现快速输入

Sub FastMark()

[A1] = "Excel 2007" ’A1为特定单元格

End Sub

1-4

使用Offset属性返回单元格区域,

Sub RngOffset()

Sheets("Sheet1")Range("A1:B2")Offset(2,

2)Select ’用offste相对位置来确定单元格

End Sub

1-5 使用Resize属性返回调整后的单元格区域

Sub RngResize()

Sheets("Sheet1")Range("A1") ’用offste相对位置来确定单元格)Select ’用range 来确定左上角为起始位置,’用resize相来确定单元格大小

End Sub

范例2 选定单元格区域的方法2-1

使用Select方法

Sub RngSelect()

Sheets("Sheet2")Activate ‘ 激活工作表

Sheets("Sheet2")Range("A1:B10")Select ’选择单元格

End Sub

2-2

使用Activate方法

Sub RngActivate()

Sheets("Sheet2")Activate

Sheets("Sheet2")Range("A1:B10")Activate

End Sub

2-3

使用Goto方法

Sub RngGoto()

ApplicationGoto

Reference:=Sheets("Sheet2")Range("A1:B10"), Scroll:=True

End Sub

以上就是关于用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行全部的内容,包括:用java代码实现读取Excel中每个sheet页的内容,并且要与其他的Excel中某一列的值进行、怎么提取excel单元格的数值并使其在vba参与循环、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/9872262.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存