VB - 通过vs2010编写vb程序操作word与excel

通过vs2010编写vb程序操作word与excel

1、开发环境

配置开发环境,将vs2010的c++开发环境转换到vb的开发环境。

点击菜单栏->工具->导入和导出设置,打开如下所示界面:

选中“重置所有设置”,点击下一步:

选中“否,***”,点击下一步:

选中“Visual Basic开发设置”,点击完成,等待配置即可。

配置完成之后,选择新建Visual Basic的Windows 窗体应用程序。

2、引入word和excel的库

当建立新的工程之后,如果要操作word和excel,需要引入word和excel的库。

右键点击工程名,选择“属性”,点击“引用”,打开如下界面:

点击“添加”,分别添加如上图所示的word和excel库。

同时也需要导入 Office的Interop命名空间,因为word和excel的类库分别在Microsoft.Office.Interop命名空间下。

3、编写vb程序

首先,定义如下的对象;

  1. Private mWordApp As Word.Application '定义一个word的对象
  2. Private mWordDoc As Word.Document '用于操作word文档的工作对象
  3. Private mExcelApp As Excel.Application '定义一个excel的对象
  4. Private mExcelWorkBook As Excel.Workbook '用于操作excel文档的工作对象
  5. Private mWordFilePath As String 'word文档所在的路径
  6. Private mExcelFilePath As String 'excel文档的路径

 

获得需要操作的word文档的路径和名称

  1. '打开选择word文档的对话框,并选择文件
  2. If pOpenWordFileDialog.ShowDialog() = DialogResult.OK Then
  3. '获取并显示选择的word文档名称及目录
  4. mWordFilePath = pOpenWordFileDialog.FileName
  5. pTextBoxWordFileDir.Text = mWordFilePath
  6. End If

 

然后创建word和excel的对象:

  1. mWordApp = CreateObject("Word.Application")
  2. mExcelApp = CreateObject("Excel.Application")

 

获得word的文档对象:

mWordDoc = mWordApp.Documents.Open(mWordFilePath)

新建excel工作表:

  1. '---------------------------------------------------------------------------------
  2. '获取excel文档的目录与文件名
  3. Dim wordFileName As String
  4. wordFileName = Strings.Left(mWordDoc.Name, Len(mWordDoc.Name) - 4) '获取当前文档名称,不包括后缀名
  5. mExcelFilePath = mWordDoc.Path + "\" + wordFileName + "xlsx"
  6. '---------------------------------------------------------------------------------
  7. '新建excel文档,并将Word中的内容导出到该Excel中
  8. mExcelApp.Visible = True
  9. mExcelWorkBook = mExcelApp.Workbooks.Add '新建一个Excel文件
  10. mExcelWorkBook.SaveAs(Filename:=mExcelFilePath) '设置新建Excel文件的路径和文件名

 

 

当操作完成之后,需销毁word对象

  1. '---------------------------------------------------------------------------------
  2. '退出word
  3. mWordDoc.Close()
  4. mWordDoc = Nothing
  5. mWordApp.Quit()

 

具体的数据导出操作请参考博客:https://blog.csdn.net/bailang_zhizun/article/details/79866671

(0)

相关推荐