如何用VB调用WORD文档,请高手进,谢谢~!~
知道,不过不能直接读取,因为微软没有公布加密方式,所以要调用WORD来读取,然后获取它先在工程的引用里面加上Microsoft Word 11.0 Object LibraryDim 剪切板文本Dim Word文字处理系统界面 As Word.Application '建立一个word.application对象Dim Word文档 As Word.DocumentDim Word文档文本 As Word.Selection '在word文字处理系统中添加一个文档Set Word文字处理系统界面 = CreateObject("Word.Application") '选择对象Word文字处理系统界面.Visible = False '不显示word.application,即word文字处理系统界面Set Word文档 = Word文字处理系统界面.Documents.Open(文件路径)Set Word文档文本 = Word文字处理系统界面.SelectionWord文档文本.WholeStoryWord文档文本.Copy剪切板文本 = Clipboard.GetText(vbCFText) '放到text1中Text1.Text = 剪切板文本'Clipboard.SetData TempWord文档.Close '关闭文档Word文字处理系统界面.Application.QuitSet Word文字处理系统界面 = Nothing '清空变量Set Word文档文本 = Nothing'完成操作我通过剪切板来获取文本,因为这样可以保留格式(本人独创)如果直接获取也是可以的,不过格式全部丢失,所以我的方法会更好一点
怎么样用VB打开一个word文件
假设 D 盘下有一名为 1.docx 的 Word 文档,其内容如下:则通过以下代码即可读取到该文档中的内容:Public Sub GetWordContent()Dim objWordDoc As ObjectSet objWordDoc = GetObject("D:\1.docx")MsgBox objWordDoc.Content.Text, vbInformation, "Word"Set objWordDoc = NothingEnd Sub运行效果:
VB用命令按钮读文件
通过在打开之前进行窗口查找,如果查找成功,则调用SetWindowPos 置顶窗体,否则打开Private Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As LongPrivate Declare Function FindWindow Lib "user32" Alias "FindWindowA" (ByVal lpClassName As String, ByVal lpWindowName As String) As LongPrivate Const HWND_TOPMOST = -1Private Const SWP_NOMOVE = &H2Private Const SWP_NOSIZE = &H1Private Const SWP_SHOWWINDOW = &H40Private Sub Form_Load()Dim n As Long, m As LongDim sName As StringsName = "1.doc" & " - Microsoft Word" '这里的1.doc 改成你的文件名n = FindWindow(vbNullString, sName)If n <> 0 Thenm = SetWindowPos(n, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOMOVE Or SWP_NOSIZE Or SWP_SHOWWINDOW)Else'打开Word代码End IfEnd Sub
转载请注明出处51数据库 » vb 读word文件
三星专卖14399448