版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、C#弋碼#region導(dǎo)岀當(dāng)前頁到Excel中25/按下導(dǎo)出按鈕4privatevoidbutton7_Click(objectsender,EventArgse)print(dataGridView1);publicvoidprint(DataGridViewdataGridView1)-.11/導(dǎo)岀到execl.1.1try1213/沒有數(shù)據(jù)的話就不往下執(zhí)行Jif(dataGridView1.Rows.Count=0)i;return;.1:/實(shí)例化一個(gè)Excel.Application對象Microsoft.Office.lnterop.Excel.Applicationexcel=ne
2、wMicrosoft.Office.lnterop.Excel.Application();18i:?;/讓后臺執(zhí)行設(shè)置為不可見,為true的話會(huì)看到打開一個(gè)Excel,然后數(shù)據(jù)在往里寫1excel.Visible=false;21/新增加一個(gè)工作簿,Workbook是直接保存,不會(huì)彈岀保存對話框,加上Application會(huì)彈岀保存對話框,值為false會(huì)報(bào)錯(cuò)23excel.Application.Workbooks.Add(true);/生成Excel中列頭名稱for(inti=0;idataGridView1.Columns.Count;i+)酋Hexcel.Cells1,i+1=dat
3、aGridView1.Columnsi.HeaderText;2829/把DataGridView當(dāng)前頁的數(shù)據(jù)保存在Excel中for(inti=0;idataGridView1.Rows.Count-1;i+)引32 for(intj=0;jdataGridView1.Columns.Count;j+)33 34 if(dataGridView1j,i.ValueType=typeof(string)35 嵋excel.Cellsi+2,j+1=+dataGridView1j,i.Value.ToString();弟3Selse射-打excel.Cellsi+2,j+1i.Value.ToS
4、tring();41 42 43 4444 /設(shè)置禁止彈出保存和覆蓋的詢問提示框excel.DisplayAlerts=false;4】excel.AlertBeforeOverwriting=false;48的/保存工作簿1excel.Application.Workbooks.Add(true).Save();:l/保存excel文件52 excel.Save(D:+KKHMD.xls);5353 /確保Excel進(jìn)程關(guān)閉.八excel.Quit();沁excel=null;5759 catch(Exceptionex)60 &MessageBox.Show(ex.Message,錯(cuò)誤提示
5、);:3-#endregion導(dǎo)岀從數(shù)據(jù)庫中查詢到的所有的數(shù)據(jù)到Excel中C#弋碼M#region導(dǎo)岀全部數(shù)據(jù)到Excel中,可彈岀保存對話框,但沒用6(5publicvoidprintAll(System.Data.DataTabledt)/導(dǎo)岀到execltry172/沒有數(shù)據(jù)的話就不往下執(zhí)行=dataGridView1j,SaveFileDialog:if(dt.Rows.Count=0)左!return;:/實(shí)例化一個(gè)Excel.Application對象飛Microsoft.Office.lnterop.Excel.Applicationexcel=newMicrosoft.Off
6、ice.lnterop.Excel.Application();77安/新增加一個(gè)工作簿,Workbook是直接保存,不會(huì)彈岀保存對話框,加上Application會(huì)彈岀保存對話框,值為false會(huì)報(bào)錯(cuò)丿:.excel.Application.Workbooks.Add(true);80知/讓后臺執(zhí)行設(shè)置為不可見,為true的話會(huì)看到打開一個(gè)Excel,然后數(shù)據(jù)在excel.Visible=false;/生成Excel中列頭名稱for(inti=0;iif(dt.Rows.Count0)91 92 for(inti=0;idt.Rows.Count;i+)控制Excel中行,上下的距離,就是可
7、以到Excel最下的行數(shù),比數(shù)據(jù)長了報(bào)錯(cuò),比數(shù)據(jù)短了會(huì)顯示不完如訊for(intj=0;jdt.Columns.Count;j+)/控制Excel中列,左右的距離,就是可以到Excel最右的列數(shù),比數(shù)據(jù)長了報(bào)錯(cuò),比數(shù)據(jù)短了會(huì)顯示不完95stringstr=dt.Rowsij.ToString();9?excel.Cellsi+2,j+1=+str;/i控制行,從Excel中第2行開始輸岀第一行數(shù)據(jù),j控制列,從Excel中第1列輸岀第1列數(shù)據(jù),+是以string形式保存,所以遇到數(shù)字不會(huì)轉(zhuǎn)成16進(jìn)制98 99 1C0jv/設(shè)置禁止彈出保存和覆蓋的詢問提示框?excel.DisplayAlert
8、s=false;li?excel.AlertBeforeOverwriting=false;/保存工作簿,值為false會(huì)報(bào)錯(cuò)excel.Application.Workbooks.Add(true).Save();/保存excel文件excel.Save(D:+KKHMD.xls);.1.1-/確保Excel進(jìn)程關(guān)閉.1.1.1excel.Quit();.1.1excel=null;.1-catch(Exceptionex).MessageBox.Show(ex.Message,錯(cuò)誤提示);.i.r.1.1;130privatevoidbutton1_Clic
9、k(objectsender,EventArgse).rr-?-.printAll(dt);二#endregion125privatevoidmenultem16_Click(objectsender,System.EventArgse)ds.TablesCurrentTable.AcceptChanges();this.Cursor=Cursors.WaitCursor;Excel.ApplicationmyExcel=newExcel.Application();myExcel.Application.Workbooks.Add(true);myExcel.Visible=true;myE
10、xcel.Cells1,1=this.dataGrid1.CaptionText;/ObjectDateds.TablesCurrentTable.Rows.Countds.TablesCurrentTable.Columns.Count;/生成標(biāo)題for(inti=0;ids.TablesCurrentTable.Columns.Count;i+)myExcel.Cells2,i+1=ds.TablesCurrentTable.Columnsi.Caption;/填充數(shù)據(jù)for(inti=0;ids.TablesCurrentTable.Rows.Count;i+)for(intj=0;jd
11、s.TablesCurrentTable.Columns.Count;j+)if(ds.TablesCurrentTable.Rowsij.GetType()=typeof(System.String)I?i-myExcel.Cellsi+3,j+1=+ds.TablesCurrentTable.Rowsij.ToString();elsemyExcel.Cellsi+3,j+1=ds.TablesCurrentTable.Rowsij.ToString();.冬this.Cursor=Cursors.Default;MessageBox.Show(導(dǎo)岀成功!恭,MessageBoxButto
12、ns.OK,MessageBoxlcon.Asterisk);|130privatevoidbutton5_Click_1(objectsender,EventArgse)/建立Excel對象Excel.Applicationexcel=newExcel.Application();excel.Application.Workbooks.Add(true);/生成字段名稱for(inti=0;idataGridView2.ColumnCount;i+)excel.Cells1,i+1=dataGridView2.Columnsi.HeaderText;if(y=0)y=1;toolStripS
13、tatusLabel6.Text=數(shù)據(jù)導(dǎo)入中,請等待??;/填充數(shù)據(jù)for(inti=0;idataGridView2.RowCount-1;i+)for(intj=0;jdataGridView2.ColumnCount;j+)if(dataGridView2j,i.Value=typeof(string)excel.Cellsi+2,j+1=+dataGridView2i,j.Value.ToString();elseexcel.Cellsi+2,j+1=dataGridView2j,i.Value.ToString();excel.Visible=true;/二1/vparamname=m
14、ydgv控件DataGridView/vparamname=dic中英文對照的標(biāo)題dic)publicstaticvoidExportTasks(DataGridViewmydgv,Dictionary/定義要使用的Excel組件接口/定義Application對象,此對象表示整個(gè)Excel程序Microsoft.Office.lnterop.Excel.ApplicationexcelApp=null;/定義Workbook對象,此對象代表工作薄Microsoft.Office.lnterop.Excel.WorkbookworkBook;/定義Worksheet對象,此對象表示Execel
15、中的一張工作表Microsoft.Office.Interop.Excel.Worksheetws=null;/定義Range對象,此對象代表單元格區(qū)域Microsoft.Office.Interop.Excel.Rangerange;.1廠intdcell=1;introwindex=0;intcolindex=0;沁introwcount=mydgv.Rows.Count;intcolcount=mydgv.Columns.Count;intdispcolcount=dic.Count;try/初始化Application對象excelAppexcelApp=newMicrosoft.Of
16、fice.Interop.Excel.Application();/在工作薄的第一個(gè)工作表上創(chuàng)建任務(wù)列表workBook=excelApp.Workbooks.Add(XlWBATemplate.xlWBATWorksheet);ws=(Worksheet)workBook.Worksheets1;.1:/命名工作表的名稱為ws.Name=Sheet1;/創(chuàng)建緩存Object,objdata=newobjectrowcount+1,colcount;/創(chuàng)建標(biāo)題foreach(stringsindic.Keys)objdatarowindex,colindex+=dics.ToString();
17、/獲取數(shù)據(jù)for(inti=0;irowcount;i+)dcell=0;foreach(stringssindic.Keys)for(intj=0;jcolcount;j+)if(mydgv.Columnsj.Name=ss)objdatai+1,dcell+=mydgv.Rowsi.Cellsj.FormattedValue.ToString();/得到樣式之后的值/寫入Excelrange=ws.get_Range(excelApp.Cells1,1,excelApp.Cellsrowcount,dispcolcount);range.Value2=objdata;System.Wind
18、ows.Forms.Application.DoEvents();/設(shè)置格式excelApp.Cells.HorizontalAlignmentMicrosoft.Office.lnterop.Excel.Constants.xlLeft;/全局左對齊excelApp.Cells.EntireColumn.AutoFit();range=ws.get_Range(excelApp.Cells1,1,excelApp.Cells1,colcount);range.Font.Bold=true;/標(biāo)題粗體/顯示ExcelexcelApp.Visible=true;Ucatch(Exceptione
19、x)throwex;136#.汀usingSystem;usingSystem.Collections.Generic;usingSystem.Text;usingSystem.Web.Ul.WebControls;usingSystem.Data;usingSystem.Web.Ul.HtmlControls;namespaceCommonpublicclassExcelHelper/Excel導(dǎo)岀publicstaticvoidExport(GridViewdgExport,DataTabledtData)System.Web.HttpContextcurContext=System.Web.HttpContext.Current;/IO用于導(dǎo)岀并返回excel文件System.IO.StringWriterstrWriter=null;System.Web.UI.HtmlTextWriterhtmlWriter=null;if(dtData!=null)/設(shè)置編碼和附件格式curContext.Response.Clear();curContext.Response.ClearContent();curContext.Response.Buffer=true;curContext.Respo
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 環(huán)境保護(hù)局安全生產(chǎn)制度
- 罕見病藥物研究的倫理加速審批策略
- 創(chuàng)意集市活動(dòng)策劃方案(3篇)
- 邊境管理制度化建設(shè)(3篇)
- 2025年泰州市海陵區(qū)法院系統(tǒng)招聘真題
- 29-6-變電安規(guī)-變電帶電作業(yè)專業(yè)
- 2026年電力調(diào)度員考試題電力負(fù)荷預(yù)測與調(diào)度決策
- 2026年項(xiàng)目管理師面試實(shí)操題及答案參考
- 2026年區(qū)塊鏈技術(shù)與應(yīng)用考試題庫前沿知識全解析
- 2026年股票投資基礎(chǔ)與實(shí)戰(zhàn)技巧模擬試題
- DB15∕T 2385-2021 草原退化評價(jià)技術(shù)規(guī)程
- 焦化廠儀表工崗位考試試卷及答案
- 餐廳充值服務(wù)合同范本
- 2025年汽車洗滌器總成行業(yè)分析報(bào)告及未來發(fā)展趨勢預(yù)測
- 麻疹知識培訓(xùn)內(nèi)容總結(jié)
- 2025年低空經(jīng)濟(jì)無人機(jī)災(zāi)害預(yù)警行業(yè)報(bào)告
- 高考語文強(qiáng)基試卷及答案
- 五岳課件教學(xué)課件
- 2025年國家公務(wù)員考試公共基礎(chǔ)知識模擬試卷及答案(共五套)
- 雨污分流監(jiān)理工作總結(jié)報(bào)告
- 《益生菌與藥食同源植物成分協(xié)同作用評價(jià)》-編制說明 征求意見稿
評論
0/150
提交評論