蒙在股里 发表于 2015-1-16 22:29:40

ASP.NET网页编程之c# 完成Word连接Excel的MailMerge功能

也不知道,我同学昨天说数据挖掘很好。方针:利用word的MailMerge功效,数据源是Excel中的数据。这些材料在网上很少,只能本人渐渐测试了。
关于Word的MailMerge功效:
word供应邮件的模板,能够选择各类数据源,好比数据库,excel等,然后群发(或打印、另存文件)邮件。

为了完成这个功效,我的程序要能做的是
1:翻开word文件工具
2:设置MailMerge数据源:指定Excel,指定查询语句,指定连接的列s
3:封闭保留

关于援用:
usingWord=Microsoft.Office.Interop.Word;
usingSystem.Reflection;
usingSystem.Diagnostics;
usingSystem.IO;
关于变量:word的com工具必要传进的参数界说
Word.ApplicationWordApp=newMicrosoft.Office.Interop.Word.Application();
objectmissing=System.Reflection.Missing.Value;
objectfalseValue=false;
objecttrueValue=true;
关于处置
必要注重的是
1:翻开word的体例
2:query的写法。相似于sql一样平常,对照好玩。
3:设置列,。设置以后,在word中能够瞥见这些列。
4:封闭word以后,还得再copy一次excel。间接天生以后的excel文件size暴跌,文件还打不开,以是掩盖一遍了之。缘故原由。
privatevoidbutton1_Click(objectsender,EventArgse)
{
objectfileName=CopyTemplateDoc();//copydocin
Word.Documentdoc=WordApp.Documents.Open(reffileName,refmissing,reffalseValue,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,refmissing,reftrueValue,refmissing,refmissing,refmissing);
objectlinkTo=CopyExcelData();//copyexceldata
objectquery="SELECT*FROM`Sheet1$`";//datafromsheet1
objectheader="Name,Category,Address,Content";//filedlist
try
{
doc.MailMerge.CreateDataSource(reflinkTo,refmissing,refmissing,refheader,reffalseValue,refquery,refmissing,refmissing,reftrueValue);
doc.MailMerge.Fields.Add(WordApp.Selection.Range,"Name");//addonefiledtotest
MessageBox.Show("success");
}
catch(Exceptionex)
{
MessageBox.Show(ex.Message);
}
finally
{
doc.Save();//saveword
CloseApp();//closewordapp
CopyExcelData();//copydataagain,*******************
}
}
关于封闭word工具
publicvoidCloseApp()
{
WordApp.Documents.Close(reftrueValue,refmissing,refmissing);
WordApp.Quit(reftrueValue,refmissing,refmissing);
System.Runtime.InteropServices.Marshal.ReleaseComObject(WordApp);
GC.Collect();
//this.KillExcelProcess();
}
另有两个工具函数不再赘述,用来copy文件而且前往文件名privatestringCopyExcelData();和privatestringCopyTemplateDoc()。

学习asp.net两个月有余了,除了对html、web控件比较熟悉(应该是说都能理解和接受)之外,竟不知道自己还会什么。看了两本书:《精通asp.net网络编程》(人民邮电出版社)、《asp.net实用案例教程》(清华大学出版社)。

不帅 发表于 2015-1-17 15:48:56

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

小女巫 发表于 2015-1-20 19:54:12

目前在微软的.net战略中新推出的ASP.net借鉴了Java技术的优点,使用CSharp(C#)语言作为ASP.net的推荐语言,同时改进了以前ASP的安全性差等缺点。但是,使用ASP/ASP.net仍有一定的局限性,因为从某种角度来说它们只能在微软的WindowsNT/2000/XP+IIS的服务器平台上良好运行(虽然像ChilliSoft提供了在UNIX/Linux上运行ASP的解决方案.

简单生活 发表于 2015-1-29 19:30:07

主流网站开发语言之ASP:ASP是微软(Microsoft)所开发的一种后台脚本语言,它的语法和VisualBASIC类似,可以像SSI(ServerSideInclude)那样把后台脚本代码内嵌到HTML页面中。虽然ASP简单易用,但是它自身存在着许多缺陷,最重要的就是安全性问题。

飘飘悠悠 发表于 2015-2-6 03:34:00

CGI程序在运行的时候,首先是客户向服务器上的CGI程序发送一个请求,服务器接收到客户的请求后,就会打开一个新的Process(进程)来执行CGI程序,处理客户的请求。CGI程序最后将执行的结果(HTML页面代码)传回给客户。

admin 发表于 2015-2-15 10:56:14

在asp.net虚拟主机的服务提供商中,目前首推的是CNNIC的其中一家域名注册机构---时代互联(www.now.net.cn),他们早在2001年微软刚推出Asp.net时就推出了对应的Asp.net虚拟主机了,经笔者的使用测试,他提供的Asp.net性能非常的稳定,版本也会定期的更新,目前他的

深爱那片海 发表于 2015-3-4 11:25:49

ASP.net的服务器,要求安装一个.net环境,当然我这里指的是windows系统,顺便点一下,.net只能放在windows环境里来运行。Asp.net1.1的就装Framework1.1,Asp.net2.0的就装Framework2.0。

飘灵儿 发表于 2015-3-11 19:03:34

是目前ASP在UNIX/Linux上的应用可以说几乎为0)。所以平台的局限性和ASP自身的安全性限制了ASP的广泛应用。

爱飞 发表于 2015-3-19 08:57:18

在调试JSP代码时,如果程序出错,JSP服务器会返回出错信息,并在浏览器中显示。这时,由于JSP是先被转换成Servlet后再运行的,所以,浏览器中所显示的代码出错的行数并不是JSP源代码的行数。

透明 发表于 2015-3-27 17:23:47

PHP的源代码完全公开,在OpenSource意识抬头的今天,它更是这方面的中流砥柱。不断地有新的函数库加入,以及不停地更新,使得PHP无论在UNIX或是Win32的平台上都可以有更多新的功能。它提供丰富的函数,使得在程式设计方面有着更好的资源。目前PHP的最新版本为4.1.1,它可以在Win32以及UNIX/Linux等几乎所有的平台上良好工作。PHP在4.0版后使用了全新的Zend引擎,其在最佳化之后的效率,比较传统CGI或者ASP等技术有了更好的表现。
页: [1]
查看完整版本: ASP.NET网页编程之c# 完成Word连接Excel的MailMerge功效