現在、沢山あるワードの書類をコピーしてエクセルの各シートに貼り付ける作業をしています。
ExcelVBAを用いてワードを開いて、コピーまではなんとか出来るようになりました。
しかし、エクセルのシートにペーストするときに、画像データとして貼り付けてしまいます。
ワードの文章は表(エクセルで作られたと思うようなセル付きの表)や文章で構成されており、それをそのままコピーしたいと思っています。
コードを記載します。
Sub Open_WordExcel()
Dim n As Long
Dim fd As FileDialog
'--- Wordのアプリケーションオブジェクト ---'
Dim objWord As Word.Application
Set objWord = CreateObject("Word.Application")
objWord.Visible = True
'--- 開いたワードドキュメントを格納する変数 ---'
Dim objDoc As Word.Document
Set fd = Application.FileDialog(msoFileDialogOpen)
If fd.Show = -1 Then
For n = 1 To fd.SelectedItems.Count
Set objDoc = objWord.Documents.Open(Filename:=fd.SelectedItems.Item(n))
objDoc.Application.ActiveDocument.Repaginate 'documentを読む
With objDoc.Application.Selection
.Goto What:=wdGoToPage, Which:=wdGoToFirst
.EndKey Unit:=wdStory, Extend:=wdExtend
.Copy
End With
[color=red]Worksheets(n).Range("A1").PasteSpecial[/color]
Worksheets(n).Name = objDoc.Name
Worksheets.Add
objDoc.Close savechanges:=False
Next n
End If
End Sub
上記のコードでは、画像データとしてエクセルにコピーされるだけです。
おまけに、ワードは数頁ありますが、コピーされるのは一枚目だけです。
そこで、手動でワードの文章をエクセルにコピーすることをマクロ記録で行いましたが、その時は文章は文章で、表はエクセルのセルにきちんと配置されます。
どのように書き換えたら良いのかお教え下さい。
多分赤字のところだと思います。
よろしくお願い申し上げます。