导出excel并且给导出的excel加上链接
public SqlConnection con(){return new SqlConnection("server=192.168.11.3;uid=sa;pwd=1qaz2WSX;database=bjkwSQ");}protected void Button1_Click(object sender, EventArgs e){//Web.Config配置的路径 string str3 = ConfigurationManager.AppSettings["oldpath"].ToString();string newpath = ConfigurationManager.AppSettings["newpath"].ToString();string targetxls = ConfigurationManager.AppSettings["targetxls"].ToString();SqlConnection Connection = con();MSExcel.Application excelApp; //Excel应用程序 MSExcel.Workbook workbook; //Excel文档 excelApp = new MSExcel.ApplicationClass();Object nothing = Missing.Value;workbook = excelApp.Workbooks.Add(nothing);Microsoft.Office.Interop.Excel.Sheets sheets = workbook.Sheets;MSExcel.Worksheet worksheet = (MSExcel.Worksheet)excelApp.Worksheets.get_Item(1);excelApp.Visible = false;excelApp.UserControl = true;string sql = "select s_name ,s_brithDay,s_education,s_professionalTitle,s_telphone,s_email,t_applyName,(SELECT c_name FROM t_category_group where c_id=t_applyClassA ) as t_applyClassA ,(SELECT c_name FROM t_category_group where c_id=t_applyClassB ) as t_applyClassB,(select o_name from t_organ where t_organ.o_id=t_applySubject.o_id ) as o_id,t_applyDirect,t_operater,t_filePath from t_applySubject,t_SubjectMan where t_applySubject.s_id=t_SubjectMan.s_id AND t_applyType='000003' and t_applyAuditState='000004' ";DataSet ds = new DataSet();SqlCommand cmd = new SqlCommand(sql, Connection);SqlDataAdapter da = new SqlDataAdapter(cmd);da.Fill(ds);System.Data.DataTable dt = ds.Tables[0];#region保存文件到一个特定的文件夹里面if (dt != null){foreach (DataRow dr in dt.Rows){String sourcePath = str3 + dr["t_filePath"].ToString();//文件的原始路径String targetPath = newpath + dr["t_filePath"].ToString();//文件要保存的路径bool isrewrite = true; // true=覆盖已存在的同名文件,false则反之 System.IO.File.Copy(sourcePath, targetPath, isrewrite);}Response.Write("<script>alert('导出成功')</script>");}#endregion#region导出excel代码并给excel加上链接 if (worksheet == null)return; //工作薄中没有工作表.int rowCount = dt.Rows.Count;int excelrow =1;//写入数据,Excel索引从1开始。if (dt != null && dt.Rows.Count > 0){worksheet.Cells[excelrow, 1] = "序号";worksheet.Cells[excelrow, 2] = "课题名称";worksheet.Cells[excelrow, 3] = "申请人姓名";worksheet.Cells[excelrow, 4] = "机构名称";worksheet.Cells[excelrow, 5] = "出生日期";worksheet.Cells[excelrow, 6] = "学历";worksheet.Cells[excelrow, 7] = "技术职称";worksheet.Cells[excelrow, 8] = "手机";worksheet.Cells[excelrow, 9] = "电子邮件";worksheet.Cells[excelrow, 10] = "一级学科";worksheet.Cells[excelrow, 11] = "二级学科";worksheet.Cells[excelrow, 12] = "研究方向";worksheet.Cells[excelrow, 13] = "实施方案";excelrow++;}int m = 1;foreach (DataRow dr in dt.Rows){worksheet.Cells[excelrow, 1] = m;worksheet.Cells[excelrow, 2] = dr["t_applyName"].ToString();worksheet.Cells[excelrow, 3] = dr["s_name"].ToString();worksheet.Cells[excelrow, 4] = dr["o_id"].ToString();worksheet.Cells[excelrow, 5] = dr["s_brithDay"].ToString();worksheet.Cells[excelrow, 6] = dr["s_education"].ToString();worksheet.Cells[excelrow, 7] = dr["s_professionalTitle"].ToString();worksheet.Cells[excelrow, 8] = dr["s_telphone"].ToString();worksheet.Cells[excelrow, 9] = dr["s_email"].ToString();worksheet.Cells[excelrow, 10] = dr["t_applyClassA"].ToString();worksheet.Cells[excelrow, 11] = dr["t_applyClassB"].ToString();worksheet.Cells[excelrow, 12] = dr["t_applyDirect"].ToString();worksheet.Cells[excelrow, 13] = dr["t_filePath"].ToString(); Range tempRange = worksheet.get_Range(worksheet.Cells[excelrow, 13], worksheet.Cells[excelrow, 13]);//获取excel中的单元格worksheet.Hyperlinks.Add(tempRange, newpath + dr["t_filePath"].ToString(), Missing.Value, Missing.Value, Missing.Value);//加上超链接m++;excelrow++;} Range range = worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[1, 13]);//获取到导出excel的表头 range.RowHeight = 30;//设置高度 range.Font.Bold = true;//设置字体加粗 range.Interior.ColorIndex = 20;//设置填充颜色 Range range1 = worksheet.get_Range(worksheet.Cells[1, 1], worksheet.Cells[rowCount+1,13]);range1.BorderAround(XlLineStyle.xlContinuous, XlBorderWeight.xlThin, XlColorIndex.xlColorIndexAutomatic, null);range1.Borders.get_Item(XlBordersIndex.xlInsideHorizontal).LineStyle = XlLineStyle.xlContinuous;//块内竖线 range1.Borders.get_Item(XlBordersIndex.xlInsideVertical).LineStyle = XlLineStyle.xlContinuous;//块内横线 range1.EntireColumn.AutoFit();//设置单元格的宽度根据单元格的内容来调整workbook.SaveAs(targetxls, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Microsoft.Office.Interop.Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value, Missing.Value, Missing.Value, Missing.Value);NAR(worksheet);NAR(sheets);excelApp.Quit();NAR(excelApp);#endregion}private void NAR(object o){try{System.Runtime.InteropServices.Marshal.ReleaseComObject(o);}catch{ }finally{o = null;}}
转载于:https://www.cnblogs.com/8968wang/archive/2013/03/08/2949351.html
导出excel并且给导出的excel加上链接相关推荐
- C#读取Excel表格数据到DataGridView中和导出DataGridView中的数据到Excel
其实想在datagridview中显示excel表格中的数据跟读取数据库中的数据没什么差别,只不过是创建数据库连接的时候连接字段稍有差别. private void btnShow_Click(obj ...
- 【开发随机】JAVA+POI+自定义注解+反射构建自定义工具类实现快捷简便的Excel模板化导出(附demo代码)
220907更新 项目UAT期间,用户反映了一个问题,数据量稍大的情况下,会出现"从某一行开始,往下所有行设置的字体和字体大小不生效"的BUG. 经过排查,发现原因是:POI的XS ...
- EasyExcel实现Excel文件导入导出功能
一.EasyExcel简介 Java领域解析.生成Excel比较有名的框架有Apache poi.jxl等.但他们都存在一个严重的问题就是非常的耗内存.如果你的系统并发量不大的话可能还行,但是一旦并发 ...
- 使用POI和EasyExcel实现Excel导入和导出功能
需求场景 开发中经常会设计到excel的处理,需求场景如下所示: 1.将用户信息导出为excel表格(导出数据) 2.将Excel表中的信息录入到数据库中(导入数据) 操作Excel目前比较流行的就是 ...
- POI之excel固定模板导出
POI之excel固定模板导出 一.简介 二.excel模板 三.项目中maven依赖 四.Excel模板操作代码 五.Controller层excel模板导出接口代码 六.导出excel 一.简介 ...
- excel的下载导出
id="BAIDU_DUP_fp_iframe" src="//pos.baidu.com/wh/o.htm?ltr=" style="width: ...
- php导出表格是乱码怎么办,数据库导出excel表格是乱码怎么办-Excel表格乱码问题怎么解决?...
POI导出excel表时文件名变成乱码怎么办 在乱码的表格上键-用记事本打 2 这里会看到里面的文字都恢复了. 3 接下来文件-另存为 4 另存的时候刻改一下文件名,这里改成1副本,格式为txt,然后 ...
- 手摸手教学-利用原生POI对excel的导入导出以及阿里的easyexcel的基本操作
文章目录 原生POI对excel的导入导出以及阿里的easyexcel的基本操作 首先是最原始的POI操作excel 其次是POI操作excel对数据库的导入导出 最后是阿里的easyexcel的简单 ...
- 关于EXCEL表格导入\导出数据…
good! 原文地址:关于EXCEL表格导入导出数据库的代码 作者:海豚湾孬蛋 导入/导出Excel --从Excel文件中,导入数据到SQL数据库中,很简单,直接用下面的语句: ...
最新文章
- Silverlight Analytics Framework(开源分析框架)
- net.sf.json将string转为map
- 062_html多媒体
- 4)线性表[顺序表和链表]
- 后端小白的VUE入门笔记, 进阶篇
- 计算机专业 程序员技术练级攻略(转载)
- 区块链概念——学习笔记
- 51Nod 1445 变色DNA
- 微软云 mysql 重启_停止Azure MySQL PaaS数据库
- python基于内置的SimpleHTTPServer来搭建简易的FTP服务器实现局域网内文件共享
- Android layoutInflate.inflate 方法具体解释,removeView()错误解决
- 提高睡眠质量的东西,每天晚上睡不着的你一定要试试
- 掌握这三种方法!Word、PPT、Excel、JPG、PDF之间任你转换
- 蓝牙连接手表后微信语音来电不响铃
- 04、HTMLCSS-盒子模型
- 根文件系统rootfs构建
- ArcGIS JS API实现地图场景视频融合
- 虚幻4渲染编程(环境模拟篇)【第五卷:可交互物理植被模拟 - 上】
- idea默认编码设置
- 计算机表格大小怎么调整,excel把表格拉大_excel调整单元格大小的方法步骤详解...