VB千里行-操作Word与Excel

原创 2004年10月24日 14:45:00
本文将告诉你如何使用VB代码连接Office应用程序,并简要接触一下在文件中输入数据的方法。实际上,在VB中用代码与Word和Excel进行会话并控制它们,是可行的。但是请注意,首先需要在机器上安装office应用程序,才能在VB代码中存取它们的对象。

   下面就是一些例子,告诉你如何与这些程序会话,并控制它们。

      Option Explicit

Dim xlsApp As Excel.Application
Dim wrdApp As Word.Application

   只要相关的对象库已经被选择,在应用程序中进行对象变量的赋值是可能的。Microsoft Excel 8.0对象库是相对于Excel的,而 Microsoft Word 8.0 对象库是为Word服务的。

   在VB的IDE环境中,从“工程”菜单中选择“引用”,可以看到系统可用的所有库列表。

Private Sub Command1_Click()
    Set xlsApp = Excel.Application
    With xlsApp
        'Show Excel
        .Visible = True
        'Create a new workbook
        .Workbooks.Add
        'Put text in to the cell that is selected
        .ActiveCell.Value = "Hi"
        'Put text into A3 regardless of the selected cell
        .Range("A3").Value = "This is an example of connecting to Excel"
    End With
End Sub

   在上面的程序段中,我们在变量xlsApp中建立了一个对象,这样Excel就对用户可见了。当Excel象这样启动后,并不包含一个工作簿,所以必须创建或者执行打开操作。这里,我们建立了一个新的工作簿,然后,就可以操作其中的信息,或者打印,或者保存,或者你任意想做的事情。

Private Sub Command2_Click()
    'close the workbook
    xlsApp.Workbooks.Close
    'Close Excel
    xlsApp.Quit
End Sub

   上面这段代码执行关闭程序的功能。首先,关闭工作簿,这将出现一个提示对话框,询问用户是否想保存修改;然后,退出应用程序。

Private Sub Command3_Click()
  Set wrdApp = New Word.Application 
  With wrdApp
    'Show Word 
    .Visible = True
    'Create New Document
    .Documents.Add
    'Add text to the document
    .ActiveDocument.Content.Text = "Hi"
    .ActiveDocument.Content.Text = "This is a test example"
  End With
End Sub 

   上面这段代码中,在变量wrdApp中设置引用Word程序的对象。同样,当Word按照这种方式启动后,不会包含一个文档,所以,必须执行建立或者打开操作。这里是建立了一个新文档,然后可以操作其中的信息了,打印、保存、发送邮件,等等...

   但是,在Word文档中放置文本并非容易!特别是与Excel一起工作时。为了简单地在特定的地方放置文本,需要有一个bookmark标记。这意味着,需要事先建立一个模板。

Private Sub Command4_Click()
    'Close the current document
    wrdApp.ActiveDocument.Close
    'Close Word
    wrdApp.Quit
End Sub

   上面这段代码的功能是关闭应用程序。首先,关闭当前文档,这时可能需要用户保存修改。然后,退出程序。

Private Sub Form_Unload(Cancel As Integer)
    'Clear the memory
    Set xlsApp = Nothing
    Set wrdApp = Nothing
End Sub

   最后一段代码就是关闭VB应用程序。这是优秀程序员编程的好习惯。

   Well I hope this brief tutorial is helpful. It does not touch on much of what you can do to the office applications once they're open, but should give you an idea of how to get started.

   好了,简单的介绍到此结束。我希望能抛砖引玉,让你更加随意地操作Office应用程序!

VB千里行-操作Word与Excel

  • zgqtxwd
  • zgqtxwd
  • 2008年05月01日 05:14
  • 100

怎样在VB中控制Word(一)

网上看了很多,总结了一下,一些已经成功,一些还需要继续验证。    方法1 OK    Dim StartDoc As Long    Dim Scr_hDC As Long    Scr_hDC =...
  • autofei
  • autofei
  • 2006年08月16日 23:29
  • 1342

VB中对EXCEL的各种操作

全面控制 Excel 首先创建 Excel 对象,使用ComObj: Dim ExcelID as Excel.Application Set ExcelID as new Excel.Applica...
  • wzk456
  • wzk456
  • 2017年02月08日 15:20
  • 4636

vb操作Word[两个过程]

Public conDb As String    Public Sub exportWordReport(rs As ADODB.Recordset, filePath As String)    ...
  • peterb
  • peterb
  • 2006年01月12日 20:31
  • 1860

如何在Excel VBA 中读写word文档 步骤

1. 库的配置 在默认情况下,新创建的excel vba中不支持定义word对象。 所以需要先引入word库,操作步骤如下: 1.1 打开excel vba 界面 1.2 选中其中的一个Mod...
  • lin152
  • lin152
  • 2012年12月06日 18:48
  • 3374

vb 操作excel(持续更新)

Private Sub Command1_Click()    Dim xlApp As Object '定义EXCEL类    'Dim xlApp As Excel.Application    ...
  • yangjun07167
  • yangjun07167
  • 2010年07月11日 22:56
  • 3839

VB操作EXCEL

看了网上很多相关的博客,大都不太完全适用,在这里把一上午摸索出来的结果总结出来。形成一个更适于上手的例子。      首先工程--à引用,选择Microsoft office EXCEL 14.0 l...
  • u013521188
  • u013521188
  • 2016年07月23日 09:19
  • 406

VB操作EXCEL文件大全

Dim xlApp As New Excel.Application Dim xlBook As New Excel.Workbook Dim xlSheet As New Excel.Workshe...
  • laotou99
  • laotou99
  • 2013年10月23日 10:31
  • 18046

利用VB在Excel中复制插入行

以复制5到7行的内容,插入到第8行中为例: //选择需要复制的行:  xlsSheet.Rows("5:7").Select xlsSheet.Range("B5").Activate Sel...
  • congratution
  • congratution
  • 2011年08月24日 09:57
  • 2124

狼行千里吃肉,马行千里吃草(我读了5遍,震撼了!)

狼行千里吃肉,马行千里吃草(我读了5遍,震撼了!) 1 狼行千里吃肉,马行千里吃草,活鱼逆流而上,死魚随波逐流。有这么一句话我非常欣赏:“ 真的很累...
  • wuxiaobingandbob
  • wuxiaobingandbob
  • 2017年02月03日 10:39
  • 270
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:VB千里行-操作Word与Excel
举报原因:
原因补充:

(最多只允许输入30个字)