
首先制作一张完整的奖状,再用excel建一个获奖人名单及奖项级别的数据表。在word中用邮件合并功能,选用excel作为数据库,在奖状中插入域,最后生成新文档,就可以一次性生成所有奖状。打印即可。 在上点击右键—设置格式,在版式选项卡
首先呢 你得把你的数据绑定到一个GridView中 然后 下面的方法 就是导出了。
/// <summary>
/// 将超链接、下拉框等样式去掉
/// </summary>
/// <param name="gv"></param>
private void DisableControls(Control gv)
{
Literal l = new Literal();
string name = StringEmpty;
for (int i = 0; i < gvControlsCount; i++)
{
if (gvControls[i]GetType() == typeof(LinkButton))
{
lText = (gvControls[i] as LinkButton)Text;
gvControlsRemove(gvControls[i]);
gvControlsAddAt(i, l);
}
else if (gvControls[i]GetType() == typeof(DropDownList))
{
lText = (gvControls[i] as DropDownList)SelectedItemText;
gvControlsRemove(gvControls[i]);
gvControlsAddAt(i, l);
}
else if (gvControls[i]GetType() == typeof(HyperLink))
{
lText = (gvControls[i] as HyperLink)Text;
gvControlsRemove(gvControls[i]);
gvControlsAddAt(i, l);
}
if (gvControls[i]HasControls())
{
DisableControls(gvControls[i]);
}
}
}
/// <summary>
/// 将GridView中的内容导出成Excel文件
/// 如文件名为空,则使用规则生成文件默认
/// </summary>
/// <param name="FileName">扩展名必须为xls,而不能是xlsx,否则不能直接在Excel中打开</param>
public void ToExcel(string FileName)
{
if (stringIsNullOrEmpty(FileName))
{
string filename = DateTimeNowTicksToString() + "xls";
FileName = thisParentPageServerMapPath("~/Temp/" + filename);
}
//去除分页、排序
thisAllowPaging = false;
thisAllowSorting = false;
thisAutoDataBind();
//生成html
thisDisableControls(this);
>
一、准备工作
首先请确认服务端已经安装了Office Word(以下将以Office XP为例), *** 作系统为win2000或XP,并且已配置好NET的运行环境及安装VSNET C#开发环境后,我们就可以打开VSNET,并新建一个Visual C#项目ASPNET Web应用程序,位置为“”。(如图一)
二、引用Word对象库文件
要 *** 作Word,我们就需要Word的对象库文件“MSWORDOLB”(word 2000为MSWORD9OLB),通常安装了Office Word后,你就可以在office安装目录的Office10文件夹下面找到这个文件,当我们将这个文件引入到项目后,我们就可以在源码中使用各种 *** 作函数来 *** 作Word。具体做法是打开菜单栏中的项目添加引用浏览,在打开的“选择组件”对话框中找到MSWORDOLB后按确定即可引入此对象库文件,vsnet将会自动将库文件转化为DLL组件,这样我们只要在源码中创建该组件对象即可达到 *** 作Word的目的!
三、Webform1aspxcs代码
完成添加引用后,MSWORDOLB已经转化为相关DLL文件并放置于项目的BIN目录下了,这样我们只需在源码中创建该对象,并使用word库文件内置的 *** 作函数即可轻松实现 *** 作Word,Webform1aspxcs源码请参见
五、webconfig设置
webconfig文件还需添加一句 identity impersonate="true"/以启用模拟身份,因为默认ASPNET这个用户是没有权限访问WordApplicationClass(),当启用模拟身份后所有页面将会使用匿名Internet用户帐户(IUSR_machinename)这个用户名的权限执行,这样我们就能成功访问WordApplicationClass()并在ASPNET中 *** 作Word!
//传文档所在路径 返回文档内容public string Doc2Text(string docFileName)
{
//实例化COM
MicrosoftOfficeInteropWordApplicationClass wordApp = new MicrosoftOfficeInteropWordApplicationClass();
object fileobj = docFileName;
object nullobj = SystemReflectionMissingValue;
//打开指定文件(不同版本的COM参数个数有差异,一般而言除第一个外都用nullobj就行了)
MicrosoftOfficeInteropWordDocument doc = wordAppDocumentsOpen(ref fileobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj,
ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj, ref nullobj
);
//取得doc文件中的文本
string outText = docContentText;
//关闭文件
docClose(ref nullobj, ref nullobj, ref nullobj);
//关闭COM
wordAppQuit(ref nullobj, ref nullobj, ref nullobj);
//返回
return outText;
}
在读取的时候会有损坏的文件 和被加密的文件等问题 总之C#和office的兼容性不太好
别忘了要引用word的dll
引用文件夹 右键添加引用 在组件里找MicrosoftOfficeInteropWord
读出了word文档再把它写入sql server数据库就可以了
首先你需要根据你的内容来设计数据库表的结构 例如米的所有题目都是四个选项的选择题那么可以如下设计 主键,题目内容,选项1,选项2,选项3,选项4,答案,排序号 这样录入的时候每道题对应一条数据即可 答题不易,互相理解,您的采纳是我前进
3、将SQL SERVER中查询到的数据导成一个Excel文件
T-SQL代码:
EXEC masterxp_cmdshell 'bcp 库名dbo表名out c:\Tempxls -c -q -S"servername" -U"sa" -P""'
参数:S 是SQL服务器名;U是用户;P是密码
说明:还可以导出文本文件等多种格式
实例:EXEC masterxp_cmdshell 'bcp saletesttmpdboCusAccount out c:\temp1xls -c -q -S"pmserver" -U"sa" -P"sa"'
EXEC masterxp_cmdshell 'bcp "SELECT au_fname, au_lname FROM pubsauthors ORDER BY au_lname" queryout C:\ authorsxls -c -Sservername -Usa -Ppassword'
在VB6中应用ADO导出EXCEL文件代码:
Dim cn As New ADODBConnection
cnopen "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"
cnexecute "masterxp_cmdshell 'bcp "SELECT col1, col2 FROM 库名dbo表名" queryout E:\DTxls -c -Sservername -Usa -Ppassword'"
先导入到excel里面在拷贝的word里面 这样就可以打印不是吗
在VB60中, *** 作word,使用它强大的查找、替换、删除、复制、翦切功能。还可以把特定字符替换成。有了它你就可以使用数据库中的内容或文件替换word文件中的特定字符。
只要把下列内容复制到写字板中,另存为SetWordcls文件,然后在把它添加到工程中,就可以使用了。
以上就是关于如何word中导入数据库打奖状全部的内容,包括:如何word中导入数据库打奖状、asp.net如何用word导入数据库、sql数据库怎么导入word文档等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)