有这样的任务,通过ADO.NET从数据库读取数据到DataSet,数据绑定到DataGrid或者.NET2.0里的新控件DataGridView,最后将数据写入Excel文件,提供给用户进一步的分析,如打印、图表等。
前面的步骤都很简单,关键是写Excel,毕竟Excel不是数据格式,在C#中调用Excel表格要使用到Excel的COM组件。如果你装的Office2000 ,在"C:\Program Files\Microsoft Office\Office"可以找到这个COM组件"EXCEL9.OLB",这些COM组件都是非受管代码的,要在C#中使用这些非受管代码的COM组件,就必须把他们转换成受管代码的类库。所以在用C#调用Excel表格之前,必须完成从COM组件的非受管代码到受管代码的类库的转换。在DOS命令行下键入:
tlbimp excel9.olb
这样在excel9.olb目录下就产生了三个DLL文件:"Excel.dll"、"Office.dll"、"VBIDE.dll"。
但Office2000以后的版本没有*.olb文件,对2003可以直接到OFFICE安装目录,利用.net 中带的工具在命令提示符下执行:
tlbimp excel.exe
还是会生成Excel.dll,在工程中引用这个文件就可以了。
这样与Excel有关的类都加了进来,别忘了在namespace里添加using Excel。
窗体上添加一个按钮,对Click事件方法如下:
private void button1_Click(object sender, EventArgs e)
{
int count = this.archiverdbDataSet.channel.Rows.Count//获取数据表中DataRow行总数
int column = this.archiverdbDataSet.channel.Columns.Count//获取数据表中列总数
Excel.ApplicationClass excelapp = new ApplicationClass()
//Make Excel Application Visible
excelapp.Visible = true
//写入特定文件
//Excel.Workbook wb = excelapp.Workbooks.Open(string filename,
//Type.Missing,Type.Missing,Type.Missing,Type.Missing,
//Type.Missing,Type.Missing,Type.Missing,Type.Missing,
//Type.Missing,Type.Missing,Type.Missing,Type.Missing,
//Type.Missing,Type.Missing)
Excel.Workbook wb = excelapp.Application.Workbooks.Add(true)
for (int x = 1x <= countx++)
{
for (int y = 1y <= columny++)
{
excelapp.Cells[x, y] = this.archiverdbDataSet.channel.Rows[x- 1].ItemArray[y - 1]
}
}
string tname = "C:\Book2.xls"
wb.SaveAs(tname, Missing.Value, Missing.Value, Missing.Value, Missing.Value,Missing.Value, Excel.XlSaveAsAccessMode.xlNoChange, Missing.Value, Missing.Value,Missing.Value, Missing.Value, Missing.Value)
try
{
wb.Saved = true
excelapp.UserControl = false
//excelapp.Quit()
}
catch(System.Exception op)
{
MessageBox.Show("wrong" + op.Message)
}
}
以上在VS.net 2005里测试通过。当然你还可以把Excel做的漂亮点,参考文档有例子,不过没试过。
1. 用js或jq怎么把html图片插入excel中其实就是js导出文件或文本到Excel中,js有自己封装的Excel对象var excel = new ActiveXObject("Excel.Application"); 创建Excel对象 var a = excel.Workbooks.Add(); 新建Excel var b = a.ActiveSheet; 建表 for(){for(){b.Cells(指定行).Select();指定哪一行b.Pictures.Insert(页面上的位置).getElementsByTagName('img').src);获取图片插入进去}}我以前写的大致是这个思路,并不完整,自己去查资料慢慢整理一下。
2. html表格中加入图片 怎么在表格中加入图片
添加方法如下:
1、table里添加图片可以使用img标签实现或者使用css的背景图片是实现,代码如下:
<table><tr><td><img src=xx.></td></tr></table>
css实现如下:
<table><tr><td class="page_speeder_952418209"></td></tr></table>
图片均是设置在td标签中。
2、文字也是需要写到td标签中间,如下:
<table><tr><td>;文字</td></tr></table>
3. 怎么把html导出到excel表格
把html导出成txt文件,然后再把txt文件导入Excel:
1、首先,打开excel,选择数据选项卡,自文本选项。
2、在d出的资源管理器界面选择存放好的txt文件后,点击打开按钮。
3、此时d出文本导入向导,由于我的数字是以空格为分隔字符的,所以我选择分隔符号,当然,如果你的文本是固定宽度,你可以选择第二个。然后点击下一步按钮。
4、勾选空格,检验预览数据是否和自己预想的一致。一致后继续点击下一步按钮。
5、查看预览效果。并选择列数据格式,此处没什么特别要求,建议选择常规,常规也是excel默认的格式。点击完成。
6、在d出的对话框中,选中要导入的数据区域,此处我要导入到当前单元格,并且从a1单元格开始,因此我选择a1单元格,多余的数据会自动以此单元格向两边张开。点击确定按钮
我们的数据就算是完美的导入进来了。
4. html怎么导入excel文件
先进入Excel表格,然后选中需要导入到Word文档中的区域,按下 Ctrl+C 复制;
打开Word,然后选择菜单栏的“编辑”中的“选择性粘贴”,在“形式”下面选中“Microsoft Office Excel 工作表 对象”然后确定;
此时,就已经把编辑好的Excel表格导入到Word中了,有的人这时肯定会说,这还不是和Word中表格没什么却别啊!确实,就这样用肉眼看,根本就看不错这个表格和Word中做的表格有什么不一样之处;
区别肯定是有的,不信你双击表格看看,会是什么效果,没错把,导入的表格和Excel中的表格一模一样,当然,这个表格也可以自由拖动它的长和宽,还可以运用Excel中的公式呢!
5. 怎么把html文件转成excel
1、首先,我们打开要转换成THML的表格文件。(以下是我用的WPS2019版本的截图,EXCEL软件 *** 作上差不多。)
2、接下来,点击左上角的【文件】
3、在【文件】菜单里找到并点击【另存为】
4、默认另存为的路径是【我的文档】,如需要修改,可自行选择保存的位置。我习惯将新文件保存到桌面,所以我选择【桌面】
5、最重要的一步来啦!【文件类型】这个地方,默认是EXCEL文件,我们选择【网页文件】
6、然后需要修改文件名的,可以修改一下,后缀可以使用或,以下是我修改的index
7、最后一步,点击【保存】就完成了,这下,我们找到并打开保存的网页文件,看看效果如何。
6. JavaScript能将页面中的图片导出到excel中吗
只要网页能显示图片,就能导出到EXCEL <!--把table的ID传过去就好了-->
你的table 在IE浏览器里工具-》inter选项-》安全-》自定义级别-》把你禁用的都打开。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)