C 對Execl操作類

2022-05-15 20:44:03 字數 1811 閱讀 2553

1.nuget下安裝 npoi

2.例項**:(可以根據具體情況注釋和新增**邏輯)

public class execlhelper

//定義要返回的datatable物件

datatable data = new datatable();

//excel工作表

npoi.ss.usermodel.isheet sheet = null;

//資料開始行(排除標題行)

int startrow = 0;

try//根據指定路徑讀取檔案

filestream fs = new filestream(filename, filemode.open, fileaccess.read);

//根據檔案流建立excel資料結構

workbook = npoi.ss.usermodel.workbookfactory.create(fs);

//iworkbook workbook = new hssfworkbook(fs);

iworkbook workbook;

string fileext = path.getextension(filename).tolower();

if (fileext == ".xlsx")

else if (fileext == ".xls")

else

if (workbook == null)

//如果有指定工作表名稱

if (!string.isnullorempty(sheetname))

}else

if (sheet != null)}}

startrow = sheet.firstrownum + 1;

}else

//最後一列的標號

int rowcount = sheet.lastrownum;

for (int i = startrow; i <= rowcount; ++i)

data.rows.add(datarow);}}

return data;

}catch (exception ex)

}///

/// datable匯出成excel

///

///

/// 匯出路徑(包括檔名與副檔名)

public static bool tabletoexcel(datatable dt, string file,listcelllist)

else if (fileext == ".xls")

else

isheet sheet = workbook.createsheet("sheet");

//表頭

irow row = sheet.createrow(0);

for (int i = 0; i < celllist.count; i++)

//資料

for (int i = 0; i < dt.rows.count; i++)

}//轉為位元組陣列

memorystream stream = new memorystream();

workbook.write(stream);

var buf = stream.toarray();

//儲存為excel檔案

using (filestream fs = new filestream(file, filemode.create, fileaccess.write))

return true;

}catch(exception ex)}}

注:celllist為execl表頭集合

PB對EXECL的常用操作

ole object.workbooks.add 新建乙個excel檔案 ole object.workbooks.open filename 開啟乙個已存在excel檔案 ole object.activeworkbook.sheets sheetname select 選擇檔案中乙個工作表 格式...

POI操作execl表 有這個execl跑不了

近期做專案用到poi操作execl,感覺應該總結歸總一下 匯入依賴 org.apache.poi groupid poi artifactid 3.17 version dependency 建立 workbook workbook newhssfworkbook sheet sheet workb...

Execl常用快捷操作

ctrl a 全選 ctrl z 撤銷 ctrl x 剪下 ctrl c 複製 ctrl v 貼上 ctrl b 加粗 ctrl s 儲存 ctrl f 查詢 ctrl h 替換 alt enter 單元格內強制換行home 移到工作表中某一行的開頭 ctrl home 定位到工作表的開頭a1單元格...