在给企业开发的项目中,客户经常要求将 在给企业开发的项目中,客户经常要求将数据汇总显示并打印。站在程序员的立场上,简单数据的汇总打印可以采用VB自带报表,对复杂的数据用水晶报表或第三方打印控件。在企业中,汇总数据另一个目的是为了便于交流和共享资源,报表的格式通常固定,内容可以自己调整,他们对 Excel 和 Word 情有独钟。
刚完成的项目中,客户要求将汇总的数据以三种方式进行显示和打印:AutoCad、Excel 和 Word 文档中。前两种方式网上资源很多,对 Word 文档我找到例子不是很多。由于需要和 AutoCad 开发程序结合,不能将 Word 文档以 OLE 的方式 嵌入到程序中,文档只能在内存中形成,这将占用大量的CPU资源,另开一个线程进行处理,线程间以发送消息的方式进行通信。
首先在VC引入Word, 对格式相同的地方一定使用模版的方式进行处理,这可以大大的提高运行速度,Word中的模版为*.dot。加载模版的代码为:
sDocs=sApp.GetDocuments();
sDocs.AttachDispatch(sApp.GetDocuments(),true);
COleVariant vFalse((long)0),vTrue((long)1);
sDoc.AttachDispatch(sDocs.Add(COleVariant(_variant_t(strFileName)), vFalse,vFalse, vTrue));
需要注意的是,如果Word中使用到表格,VBA录制的全是Selection对象的处理方法,在VC中使用Selection对象的MoveUp和MoveDown函数时会出现不确定现象(如果你知道为什么的话请告诉我)。如果你需要绘制表格,不要用程序来动态形成,绘制表格的代码是很繁琐的,而且在页眉中绘制单元格是很难控制的。可以先在模版中绘出你要的表格格式,然后用程序复制单元格或者直接使用模版中的单元格。由于我做的项目表格的行数不确定,我采用的是复制单元格的方式(速度比较慢,谁有更好的方法?)。
用vc操作word,怎样获得word的总的页数
添加包含总页数的自定义页码
库中的一些页码含有总页数(第 X 页,共 Y 页)。但是,如果要创建自定义页码,请执行下列操作:
双击页眉区域或页脚区域(靠近页面顶部或页面底部)。
这将打开“页眉和页脚工具”下的“设计”选项卡。
若要将页码放置到页面中间或右侧,请执行下列操作:
若要将页码放置到中间,请单击“设计”选项卡的“位置”组中的“插入‘对齐方式’选项卡”,单击“居中”,再单击“确定”。
若要将页码放置到页面右侧,请单击“设计”选项卡的“位置”组中的“插入‘对齐方式’选项卡”,单击“靠右”,再单击“确定”。
键入第和一个空格。
在“插入”选项卡上的“文本”组中,单击“文档部件”,然后单击“域”。
在“域名”列表中,单击“Page”,再单击“确定”。
在该页码后键入一个空格,再依次键入页、逗号、共,然后再键入一个空格。
在“插入”选项卡上的“文本”组中,单击“文档部件”,然后单击“域”。
在“域名”列表中,单击“NumPages”,然后单击“确定”。
在总页数后键入一个空格,再键入页。
若要更改编号格式,请单击“页眉和页脚”组中的“页码”,再单击“设置页码格式”。
若要返回至文档正文,请单击“设计”选项卡(位于“页眉和页脚工具”下)上的“关闭页眉和页脚”。
如何用VC操作word时,实现插入换页符
你好!
有两种方法:
方法一:插入-分页符。
方法二:Ctrl+Enter,两个键一起按就可以。
请教用vc++操作word,对标题进行编号,并插入目录。
mfc里面没有contentcontrol这个代码吧,至少在msdn里面没找到
有的,不过不是用这个,是用tablecontent来实现目录的。
VC 操作word时,插入word类 。cannot find coclass for interface pagesetup
我试了一下,用vs2010版本出现这个错误,用vs2003添加正常,不知道你用的是哪个版本!
vc++操作word 如何从指定的页添加页眉和页脚。我现在添加的页眉是从首页开始的,我想从第三页再开始添加。
vc前面定义文档对象,打开word什么的就不啰嗦啦,关键代码如下:
……
Window mWindowActive; //定义活动窗口对象
View mViewActive; //定义活动视图对象
Pane mPane; //定义当前窗格对象
mWindowActive=app.GetActiveWindow(); //获得当前窗口
mPane=mWindowActive.GetActivePane(); //获得当前窗格
mViewActive=mPane.GetView(); //获得当前视图
mViewActive.SetSeekView(9); //设置页眉视图
font.SetSize(10);
sel.TypeText("XXXXXXXXXXXXXXXXXX有限公司");
para.SetAlignment(1); //居中
sel.TypeParagraph();
font.SetSize(11);
sel.TypeText("计 算 书 专 用 纸");
para.SetAlignment(1); //居中
font.SetSize(10);
mViewActive.SetSeekView(10); //设置页脚视图
sel.TypeText("- ");
fields.Add(sel.GetRange(),COleVariant(short(33)),COleVariant("PAGE "),vFalse1); //增加页码域
sel.TypeText(" -");
para.SetAlignment(1); //居中
mViewActive.SetSeekView(0); //回到正文视图
……
转载请注明出处51数据库 » vc操作word怎么插入列 在VC中如何将数据导入Word中