C# EPPlus.dll操作Excel

By hi_aardio at 2022-03-23 • 0人收藏 • 1141人看过

PPlus是一个使用Open Office XML(xlsx)文件格式,能读写Excel 2007/2010,不支持2003版本的Excel。
文件的开源组件,在导出Excel的时候不需要电脑上安装office。官网地址:http://epplus.codeplex.com/


import win.ui;
/*DSG{{*/
mainForm = win.form(text = "测试EPPlus使用Excel应用"; right = 959; bottom = 591)
mainForm.add()
/*}}*/

import console;
import dotNet;

console.open()

dll = dotNet.loadFile("res/EPPlus.dll")
officeOpenXml_1 = dll.import("OfficeOpenXml")

var package = officeOpenXml_1.ExcelPackage(io.fullpath("\MyTemplate.xlsx"));
//获取sheet名
var worksheet = package.Workbook.Worksheets[1];
console.log("sheet名:", worksheet)

//获取表格的列数和行数

var rowCount = worksheet.Dimension.Rows;
var colCount = worksheet.Dimension.Columns;
console.log("rowCount:", rowCount)
console.log("colCount:", colCount)

//循环读取表格
for (row = 1; rowCount; 1) {
    // 具体的获取数据
    console.log(worksheet.Cells.Item(row, 1).Value)

}

//添加sheet
//var worksheet_add = package.Workbook.Worksheets.Add("核桃及阿紫")

//设定sheet值 公式
worksheet.Cells.Item(1, 1).Value = "我是增加的11"; //直接指定行列数进行赋值
worksheet.Cells.Item("B3").Value = "你是B3"; //直接指定单元格进行赋值

worksheet.Cells.Item("J3").Formula = "AVERAGE(J1, J2)"

//设置单元格格式
worksheet.Cells.Item("E1").Style.Numberformat.Format = "#,##0.00"; //这是保留两位小数

//设置对齐方式
worksheet.Cells.Style.WrapText = true; //自动换行

//设置单元格字体样式
worksheet.Cells.Item("E4").Style.Font.Bold = true; //字体为粗体
worksheet.Cells.Item("E6").Style.Font.Name = "微软雅黑"; //字体
worksheet.Cells.Item("E7").Style.Font.Size = 12; //字体大小

//设置单元格的行高和列宽
worksheet.Cells.Style.ShrinkToFit = true; //单元格自动适应大小
worksheet.Row(1).Height = 15; //设置行高
worksheet.Row(1).CustomHeight = true; //自动调整行高
worksheet.Column(1).Width = 15; //设置列宽

//设置sheet背景
worksheet.View.ShowGridLines = false; //去掉sheet的网格线

package.Save(); //Save the workbook

mainForm.show();
return win.loopMessage();




7 个回复 | 最后更新于 2022-03-24
2022-03-23   #1

res_dll.rar

EPPlus.dll 打包

2022-03-23   #2

以前老是惦记这个epplus

2022-03-23   #3

感谢分享,这个不错

2022-03-23   #4

能调用excel的模块越来越多了,赞!

2022-03-24   #5

回复#1 @hi_aardio :

现在不用合并程序集了,这样写即可

import console; 
console.open();

import dotNet;
dotNet.reference({
	["OfficeOpenXml"] = "res\EPPlus.dll";
	["Microsoft.IO.RecyclableMemoryStream"] = "res\Microsoft.IO.RecyclableMemoryStream.dll";

});

OfficeOpenXml = dotNet.import("OfficeOpenXml");

var package = OfficeOpenXml.ExcelPackage(io.fullpath("\MyTemplate.xlsx"));
var worksheet = package.Workbook.Worksheets[1];
console.log("sheet名:", worksheet)

console.pause(true);

依赖包加上就行。

2022-03-24   #6


2022-03-24   #7

你(¬︿̫̿¬☆)heng

登录后方可回帖

登 录
信息栏
 私人小站

本站域名

ChengXu.XYZ

投诉联系:  popdes@126.com



快速上位机开发学习,本站主要记录了学习过程中遇到的问题和解决办法及上位机代码分享

这里主要专注于学习交流和经验分享.
纯私人站,当笔记本用的,学到哪写到哪.
如果侵权,联系 Popdes@126.com

友情链接
Aardio官方
Aardio资源网


才仁机械


网站地图SiteMap

Loading...