哪个语言都可以,除了字体格式,怎么自动创建表格
3条回答 默认 最新
- 赵4老师 2022-02-14 08:47关注
仅供参考:
//1.在VC中新建一控制台程序,选支持MFC(当然,你也可以不选择支持MFC的,不过会很麻烦) //2.按CTRL+W调出MFC ClassWizard,Add Class->From a type library,选择你的word的类型库 // (例如我的是word2003,安装在e盘,我的路径是"e:\edittools\microsoft office\office11\msword.olb"), // 选择完毕后,在弹出的窗口中选择要让classwizard生成的包装类,在本例中要用到 // _Application, // Documents, // _Document, // Range // 这四个类,选中他们后按OK //3.进入你的main函数所在的cpp文件,加入头文件引用 // #include "msword.h" //引用刚才classwizard生成的idispatch包装类 //4.加入代码 // console_word.cpp : Defines the entry point for the console application. // #include "stdafx.h" #include "console_word.h" #include "msword.h" #ifdef _DEBUG #define new DEBUG_NEW #undef THIS_FILE static char THIS_FILE[] = __FILE__; #endif ///////////////////////////////////////////////////////////////////////////// // The one and only application object CWinApp theApp; int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { int nRetCode = 0; // initialize MFC and print and error on failure if (!AfxWinInit(::GetModuleHandle(NULL), NULL, ::GetCommandLine(), 0)) { // TODO: change error code to suit your needs printf(_T("Fatal Error: MFC initialization failed!\n")); nRetCode = 1; } else { // TODO: code your application's behavior here. if (CoInitialize(NULL) != S_OK) { AfxMessageBox("初始化COM支持库失败!"); return -1; } _Application wordApp; Documents docs; _Document doc; Range aRange; COleVariant vTrue((short)TRUE), vFalse((short)FALSE), vOpt((long)DISP_E_PARAMNOTFOUND, VT_ERROR); CString txt; wordApp.CreateDispatch("Word.Application",NULL); wordApp.SetVisible(FALSE); docs=wordApp.GetDocuments(); doc=docs.Open(COleVariant("c:\\new\\测试.doc"),vFalse,vTrue,vFalse,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt,vOpt); aRange=doc.Range(vOpt,vOpt); txt=aRange.GetText(); AfxMessageBox(txt);//这里GetText得到的就是word文件的纯文本了,你可以将其写到txt文件中 printf("[%s]\n",txt.GetBuffer(txt.GetLength()));//里面的换行不是\r\n而是\r,所以需要输出重定向到文本文件看结果。 aRange.ReleaseDispatch(); doc.Close(vOpt,vOpt,vOpt); doc.ReleaseDispatch(); docs.ReleaseDispatch(); wordApp.Quit(vOpt,vOpt,vOpt); wordApp.ReleaseDispatch(); CoUninitialize(); } return nRetCode; }
在Word中开始记录宏,手动完成所需功能,结束记录宏,按Alt+F11键,查看刚才记录的宏对应的VBA代码。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报
悬赏问题
- ¥20 机器学习能否像多层线性模型一样处理嵌套数据
- ¥20 西门子S7-Graph,S7-300,梯形图
- ¥50 用易语言http 访问不了网页
- ¥50 safari浏览器fetch提交数据后数据丢失问题
- ¥15 matlab不知道怎么改,求解答!!
- ¥15 永磁直线电机的电流环pi调不出来
- ¥15 用stata实现聚类的代码
- ¥15 请问paddlehub能支持移动端开发吗?在Android studio上该如何部署?
- ¥20 docker里部署springboot项目,访问不到扬声器
- ¥15 netty整合springboot之后自动重连失效