用户登录
用户注册

分享至

vb6调用固定格式word vb调用word

  • 作者: 五菱赛车部秋名山站总工程师
  • 来源: 51数据库
  • 2020-04-17

源代码在办公室电脑上

明天上班贴给你

工程先引用word

Dim objWord As Object

Const CLASSOBJECT = "Word.Application"

Set objWord = CreateObject(CLASSOBJECT)

objWord.Visible = False ’隐藏word界面

Dim win As Object

Set win = objWord.Documents.Add(App.Path & "\V-2.dot") '打开word模版把记录替换到模版中

Set MyTable = win.Tables(1) '将数据写入word 表中

MyTable.Cell(5, 4) = Adodc1.Recordset.Fields("l1") & ""

MyTable.Cell(6, 4) = Adodc1.Recordset.Fields("l2") & ""

MyTable.Cell(7, 4) = Adodc1.Recordset.Fields("l3") & ""

MyTable.Cell(8, 4) = Adodc1.Recordset.Fields("l16") & ""

MyTable.Cell(9, 4) = Adodc1.Recordset.Fields("l17") & ""

objWord.Visible = True

objWord.PrintPreview = True

Do

DoEvents

'判断是否在预览状态

If Not objWord.PrintPreview Then

objWord.ActiveDocument.Close (0) '不保存直接退出

'objword.Quit '用它可以直接退出word 但是我用的时候总是卡后来干脆不用了手运关闭word

Exit Do

End If

Loop

我也是刚学还不精

希望对你有帮助来自:求助得到的回答

如何用VB调用WORD文档,请高手进,谢谢~!~

知道,不过不能直接读取,因为微软没有公布加密方式,所以要调用WORD来读取,然后获取它

先在工程的引用里面加上Microsoft Word 11.0 Object Library

Dim 剪切板文本

Dim Word文字处理系统界面 As Word.Application '建立一个word.application对象

Dim Word文档 As Word.Document

Dim Word文档文本 As Word.Selection '在word文字处理系统中添加一个文档

Set Word文字处理系统界面 = CreateObject("Word.Application") '选择对象

Word文字处理系统界面.Visible = False '不显示word.application,即word文字处理系统界面

Set Word文档 = Word文字处理系统界面.Documents.Open(文件路径)

Set Word文档文本 = Word文字处理系统界面.Selection

Word文档文本.WholeStory

Word文档文本.Copy

剪切板文本 = Clipboard.GetText(vbCFText) '放到text1中

Text1.Text = 剪切板文本

'Clipboard.SetData Temp

Word文档.Close '关闭文档

Word文字处理系统界面.Application.Quit

Set Word文字处理系统界面 = Nothing '清空变量

Set Word文档文本 = Nothing

'完成操作

我通过剪切板来获取文本,因为这样可以保留格式(本人独创)

如果直接获取也是可以的,不过格式全部丢失,所以我的方法会更好一点

vb6调用固定格式word vb调用word

VB6 如何扫描内存中已经打开的excel和word文档并自动将其保存?

一、上述代码都不要,只要复制代码即可:

Sub AutoSave()

Dim xlApp

Dim xlBook

Dim i As Integer

On Error Resume Next

Err.Clear

Set xlApp = GetObject(, "Excel.Application") '

If Err.Number = 0 Then

For i = 1 To xlApp.workbooks.Count

Set xlBook = xlApp.workbooks(i) '装入已经存在的EXCEL文件

If Not xlBook.saved Then xlBook.saved = True '自动保存

DoEvents

Next

End If

Err.Clear

Set xlApp = GetObject(, "Word.Application")

If Err.Number = 0 Then

For i = 1 To xlApp.documents.Count

Set xlBook = xlApp.documents(i) '装入已经存在的Word文件

If Not xlBook.saved Then xlBook.saved = True '自动保存

DoEvents

Next

End If

Set xlBook = Nothing '释放对象

Set xlApp = Nothing '释放对象

End Sub

二、调用很简单,只要在需要时写入

AutoSave 语句就行。

vb6编程: 有多个word文件,设计用户登陆窗体按权限查看文件,怎样处理这多个word文件

使用数据库

建个数据库,创建二个数据表

文档表保存所以的word文档

权限表:保存用户权限

连接数据库后,根据权限表中的用户权限决定是否从文档表中读取word文档并保存在硬盘上,然后打开这个文档

数据库可以用access

哪位大神会vb调用word程序,就是把数字水准数据用vb调控填到word的观测记录手簿里。

工程先引用word

Dim objWord As Object

Const CLASSOBJECT = "Word.Application"

Set objWord = CreateObject(CLASSOBJECT)

objWord.Visible = False ’隐藏word界面

Dim win As Object

Set win = objWord.Documents.Add(App.Path & "\V-2.dot") '打开word模版把记录替换到模版中

Set MyTable = win.Tables(1) '将数据写入word 表中

MyTable.Cell(5, 4) = Adodc1.Recordset.Fields("l1") & ""

MyTable.Cell(6, 4) = Adodc1.Recordset.Fields("l2") & ""

MyTable.Cell(7, 4) = Adodc1.Recordset.Fields("l3") & ""

MyTable.Cell(8, 4) = Adodc1.Recordset.Fields("l16") & ""

MyTable.Cell(9, 4) = Adodc1.Recordset.Fields("l17") & ""

objWord.Visible = True

objWord.PrintPreview = True

Do

DoEvents

'判断是否在预览状态

If Not objWord.PrintPreview Then

objWord.ActiveDocument.Close (0) '不保存直接退出

'objword.Quit '用它可以直接退出word 但是我用的时候总是卡后来干脆不用了手运关闭word

Exit Do

End If

Loop

这些数据还需要计算的,比如那个高差中数,每页的word表格只能是九站,也就是说需要让word自动生成十几页 ,然后调用模板,运行程序,生成手簿

VB怎样实现word文件调用?

VB.NET写 word文件代码:

Dim wordApp As New Word.Application

Dim objSelection As Word.Selection

Dim Title As String = "K388+400常胜沟大桥"

wordApp.Documents.Add()

oDocument = wordApp.ActiveDocument

objSelection = wordApp.Selection

wordApp.Selection.TypeText(Title)

objSelection.TypeParagraph()

wordApp.Selection.TypeText("一、桥梁基本状况卡片")

objSelection.TypeParagraph()

wordApp.Selection.TypeText("A行政数据识别,B技术结构数据")

objSelection.TypeParagraph()

wordApp.Selection.TypeText("A行政数据识别。B技术结构数据。C档案资料(全、不全、或无)。D最近技术状况评定")

objSelection.InsertBreak() '插入分页符,相当于2个字符

objSelection.TypeText("E修建工程记录")

SetRange(1)

With wordApp.Selection

.Font.Size = 18 '字体(小二)

.ParagraphFormat.Alignment = 1 '水平居中

.Font.Bold = True

End With

SetRange(2)

With wordApp.Selection

.Font.Size = 14 '字体(四)

.Font.Bold = True

.Font.Name = "华文琥珀"

End With

SetRange(25, 44, True)

With wordApp.Selection

.Font.Size = 9 '字体(小五)

.Font.Bold = True

.Font.Italic = True

End With

SetRange(4, 2)

With wordApp.Selection

.Font.Size = 9 '字体(小五)

.Font.Bold = True

End With

'文件保存

oDocument.SaveAs("d:\" & Title & ".doc")

wordApp.Visible = True

像vb调用word一样,vc如何调用其它应用程序并且达到完全控制那个程序?

COM编程.这个已经很完整了呀. 以vc6.0为例新建MFC工程会吧. 先新建MFC工程(选对话框),双击确定(OK),然后把第四步的内容复制到函数里面.要是没有基础的话,还是先学基础吧,这种事急不来的.就是我给你写好了一个,你还是不知道怎样写别的. 1\在类向导中Add Class-->from a type library 在打开中选择word安装目录下面的msword.olb 点打开,在其中选择你要的类.比如: WordApplication;(在对话框中可能是_Application在这里被的重命名了,下同!) WordDocuments; WordDocument; WordTables; WordTable; WordCell; WordRange; WordColumns; WordRows; 在头文件中输入MSWORD.h(默认) 2\在BOOL C***App::InitInstance()中加入如下代码 if (CoInitialize(NULL)!=0) { AfxMessageBox("初始化COM支持库失败,你将不能导出数据到Excel表!"); } 3\使用的时候包含如下文件 #include "msword.h" #include "comdef.h" 4\实现代码 WordApplication app; WordDocuments docs; WordDocument doc; WordTables WordTables; WordTable WordTable; WordCell WordCell; WordRange WordRange; WordColumns WordCols; WordRows WordRows; if(!app.CreateDispatch("Word.Application")) { MessageBox("创建Word服务失败!",_T("提示"),MB_ICONERROR); return; } docs.AttachDispatch(app.GetDocuments()); app.SetVisible(true); //打开文件 IDispatch *dispatch=docs.Open(&_variant_t(strFileName),&vtMissing,&vtMissing,&vtMissing, &vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing, &vtMissing,&vtMissing,&vtMissing,&vtMissing,&vtMissing); if(dispatch) { doc.AttachDispatch(dispatch); } else {//出错了 CString szErr=""; szErr.Format("打开文件出错,请查看文件是否存在!"); ::AfxMessageBox(szErr); //退出程序,释放对象 app.Quit(&vtMissing,&vtMissing,&vtMissing); docs.ReleaseDispatch(); app.ReleaseDispatch(); return; } dispatch=doc.GetTables(); if(dispatch) { WordTables.AttachDispatch(dispatch); } else {//出错了 CString szErr=""; szErr.Format("取得表格集合出错!"); ::AfxMessageBox(szErr); //退出程序,释放对象 app.Quit(&vtMissing,&vtMissing,&vtMissing); docs.ReleaseDispatch(); app.ReleaseDispatch(); doc.ReleaseDispatch(); return; } WordTables.Add(....); app.Quit(&vtMissing,&vtMissing,&vtMissing); doc.ReleaseDispatch(); docs.ReleaseDispatch(); app.ReleaseDispatch();就这么多了,希望采纳

更多建站问题,可搜一下“飘仙论坛”

转载请注明出处51数据库 » vb6调用固定格式word vb调用word

软件
前端设计
程序设计
Java相关