只能利用它们自身的功能:调用 word 打开 doc 文件,然后全部选择,复制;打开 excel,新建 .xls 文件,然后粘贴。此方法的风险在于剪贴板不受控,如果在复制后剪贴板的内容被其它程序改变了,那就失败了。代码示例: Dim oword As New Word.Application Dim odoc As Word.Document Dim osel As Word.Selection
Set odoc = oword.Documents.Open("c:\test.doc") '打开 doc 文件 Set osel = oword.Selection
osel.WholeStory '全选并且复制到系统剪贴板 osel.Copy
Set osel = Nothing
odoc.Close Set odoc = Nothing
oword.Quit Set oword = Nothing '退出 word
Dim oexcel As New Excel.Application Dim obook As Excel.Workbook Dim osheet As Excel.Worksheet
Set obook = oexcel.Workbooks.Add Set osheet = obook.Worksheets.Add '新建工作表
osheet.Paste '粘贴 word 中复制的内容 obook.SaveAs "c:\test.xls" '保存 xls 文件
Dim oword As New Word.Application
Dim odoc As Word.Document
Dim osel As Word.Selection
Set odoc = oword.Documents.Open("c:\test.doc") '打开 doc 文件
Set osel = oword.Selection
osel.WholeStory '全选并且复制到系统剪贴板
osel.Copy
Set osel = Nothing
odoc.Close
Set odoc = Nothing
oword.Quit
Set oword = Nothing '退出 word
Dim oexcel As New Excel.Application
Dim obook As Excel.Workbook
Dim osheet As Excel.Worksheet
Set obook = oexcel.Workbooks.Add
Set osheet = obook.Worksheets.Add '新建工作表
osheet.Paste '粘贴 word 中复制的内容 obook.SaveAs "c:\test.xls" '保存 xls 文件
obook.Close
Set osheet = Nothing
Set obook = Nothing
oexcel.Quit
Set oexcel = Nothing '退出 excel
1.要是遇到word中的一行文字,在excel中把num个一行的单元格合并,把文字放进去,
2.要是遇到word中的表格,整个表格及其内容就复制到excel
不知如何用具体代码实现,不知这种想法是否合理?请多指教,谢谢!!!