• 締切済み

エクセルからマクロを使用しワードの操作について

ワードの日報ファイルをコピーし、ファイル名に日付を追加して開くき、開いた日報ファイルの先頭行に日付と担当を入力したいです。 ファイルコピー、シート名変更、ファイルオープンまではできましたが、日報ファイルの先頭行に日付と担当の入力ができません。 先頭行には文字サイズが24の「日報」、その後ろに文字サイズが12の日付と担当を入れたいです。 下記のマクロにどう追記をすればよいでしょうか。 よろしくお願いします。 Sub 指定日() ' ' 指定日 Macro ' '変数を設定 Dim d1 'ファイルパス Dim d2 '作成するファイル名 Dim d3 '作成するパス・ファイル名 Dim d4 '原本ファイル名 Dim d5 'コピー元のパス・ファイル名 Dim a 'コピー元のファイル Dim b '作成する場所とファイル名 d1 = Range("M1") 'ファイルパス d2 = Range("M4") 'ダブルクリックしたセルの値 d3 = d1 & d2 '作成するパス・ファイル名 d4 = Range("m2") '原本ファイル名 d5 = d1 & d4 'コピー元のパス・ファイル名 a = d5 'コピー元のパス・ファイル名 b = d3 '作成する場所とファイル名を指定 ' コピー先ファイルが存在する場合コピーせずファイルを開く If (Dir(b) <> "") Then 'エラー回避 On Error Resume Next Else ' コピー FileCopy a, b End If ' 作成したワードファイルを開く Set b = GetObject(b) b.Application.Visible = True End Sub

みんなの回答

  • imogasi
  • ベストアンサー率27% (4737/17070)
回答No.1

WordVBAの絡んだ課題など、基本的にあきらめたほうがよい。5件程度なら、手動操作で済ませたよい。勉強するのに、Word VBAが必要で、その資料が少なくて苦労するから。現在市販本は1ー2冊しかなく、小生は、WEBでは、米国の記事(英文)を探している。しかし、ぴったりの課題はまず見つからず、途中で断念することが多い。よほど凝り性でVBAが好きで、期間をかけて勉強が必要と感じている。 ーー 質問を見て、下記をやってみた。参考に。 中途半端版です。 指定するWord文書は、下記テストでは、とりあえず文字だけのもの(表や図像無しの文書)作るか、探して指定してみてください。 Wordについては、ワードも、何も文書を開かないで下記をやることこと。 自動的に指定文書が、開きます。 Excel側にSheet1というシートがあること。 あくまで、ExcelのVBAのコードです。 ーー 標準モジュールに Sub test01() Dim Wd As Object 'Microsoft Word 15.0 object Library 参照設定のこと Set Wd = CreateObject("Word.Application") Wd.Visible = True Wd.Documents.Open "C:\Users\xxxxxx\Documents\段組をセンテンスで設定.docm" Wd.Activate '本文全体を選択する ActiveDocument.StoryRanges(wdMainTextStory).Select Wd.Selection.Copy '--- Worksheets("Sheet1").Select Range("A1").Select 'ActiveSheet.Paste Range("A1").PasteSpecial Paste:=xlPasteValues, _ Operation:=1 End Sub 処理時間はかかるが、エクセルシートSheet1にワード文書の全文が貼りつくだろう。値的には、A列に。 === 問題は 上記の、「エクセルに持ってきたいデータの、ワードでの状態」の、捉える!処理の難しさを、質問者は、意識していないだろう。 だから図像しか貼り付けられないのだ。 修正が必要なのは、上記コードの '本文全体を選択する ActiveDocument.StoryRanges(wdMainTextStory).Select の部分です。 質問には、図像だけ挙げて、移したい情報が、ワードの表内なのか、それ以外なのか、説明できてないという、根本欠陥がある。 Wordの言葉では、どう表現してよいかわからないだろうと思う。 Excelなら、B2セルとか言えば(表現すれば)よい場合が多く簡単だがね。 このWordVBAを使っての捉え方には、ワードのVBA的な基礎的なワードの仕組みの勉強が必要なんだ。 欲しい図なんかよりも、質問には、データのあり様の情報の方が肝心なんだ。 上記ぐらいの説明(例示)をされても、WordVBAで扱うのは、さらに勉強が必要で、一苦労だろうが。

tsukajun
質問者

補足

回答ありがとうございます。 根本欠陥があるとおっしゃられますが、正直よくわかりません。 質問文だけではわかりずらいと思い図像を乗せたのですが... どこがよくなかったのでしょうか?

関連するQ&A