送付先毎に内容が異なる通知文を1000通作成する為に、まずExcelでテーブルを作り、Wordで差込用の文書を作り、Excelのデータを取り込むところまではやりましたが、これでは全て1つのファイルになってしまいます。(1件あたり3ページの通知なので3000ページの1Wordファイル)
これを、差し込んだ後宛先毎に全て別のファイルとして(1000個のWordファイル)保存する方法はありませんでしょうか?
作成した通知文を各送付先毎のフォルダに分けて保存しなくてはならない為、必須事項なんです。
なんとか自動的に行いたいと思っています。
また、もし可能だった場合、各ファイル名はどんな形で割り当てられるのか・・・?
出来ればファイル名は顧客コード(Excelのデータテーブルには情報があります)で一発で保存できたら幸いです。
お知恵を下さい。どうぞよろしくお願いします。
No.2ベストアンサー
- 回答日時:
以前、同様の処理をマクロを使って行いました。
WordのVBAを良く理解せずに作ってますので、あまりスマートではありませんが事は足りました。
差し込みメイン文書(事前に差し込み設定して保存した物)に下記マクロを仕込んで実行すると、メイン文書と同じフォルダに指定したフィールド値(例では4番目)で保存します。
試す場合はテスト環境で。
Sub Test1()
Dim i As Long, LRec As Long
With ThisDocument.MailMerge
.DataSource.ActiveRecord = wdLastRecord
LRec = .DataSource.ActiveRecord
For i = 1 To LRec
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
.DataSource.FirstRecord = i
.DataSource.LastRecord = i
.DataSource.ActiveRecord = i
.Execute Pause:=True
ActiveDocument.SaveAs ThisDocument.Path & "\" & _
.DataSource.DataFields(4).Value & ".doc", wdFormatDocument
'ファイル名に使うフィールド(例では4番目)
ActiveDocument.Close
Next i
End With
End Sub
この回答への補足
早速のご回答ありがとうございます。
もう、わらにもすがる思いです。一度ご経験がおありという事ですから心強いです!
私自身がVBAを理解していないので手ほどきを頂けませんでしょうか?
やった作業を書き留めます。
「差込テンプレート.doc」に「差込データ.xls」を差込み、
「ツール」→「Visual Basic Editor」の「This Document」に
Sub Test1()
Dim i As Long, LRec As Long
With ThisDocument.MailMerge
.DataSource.ActiveRecord = wdLastRecord
LRec = .DataSource.ActiveRecord
For i = 1 To LRec
.Destination = wdSendToNewDocument
.SuppressBlankLines = True
.DataSource.FirstRecord = i
.DataSource.LastRecord = i
.DataSource.ActiveRecord = i
.Execute Pause:=True
ActiveDocument.SaveAs ThisDocument.Path & "\" & _
.DataSource.DataFields(4).Value & ".doc", wdFormatDocument
ActiveDocument.Close
Next i
End With
End Sub
と書いて「×」で閉じる。
マクロの実行をしましたが、『このマクロは無効に設定されています・・・』といったメッセージが立ち上がり、何も実行されません。
(果たしてこの手順でよいのかも疑問なのですが・・・)
セキュリティレベルも下げて見ましたがうまくいかないのですが、
手順を今一度ご教示頂けませんでしょうかか?素人で本当に申し訳ございません。。。
どうぞよろしくお願いいたします。
No.3
- 回答日時:
#2です。
標準モジュールに書く方が普通かも知れませんが、該当文書のThisDocumentモジュールでも問題ありません。
>『このマクロは無効に設定されています・・・』といったメッセージが
セキュリティレベルを「中」にした状態でWordを起動し、その後、該当ファイルを開けば「マクロ有効にしますか?」のような確認が出ると思います。
そこで「マクロ有効」にして開けば実行出来ると思いますが、、、
実行時に同じフォルダ内に同名ファイルがあった場合の上書きチェック等は特にしてませんので、試す場合はご注意下さい。
早速のご回答ありがとうございます。
ご指定の通り試したところ、分割できました。
本当に助かりました。
何度もお知恵をお借りして恐縮です。
ご協力ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Excel(エクセル) エクセルのマクロについて教えてください。 2 2023/02/21 13:29
- Excel(エクセル) 【困っています】VBA 追加処理の記述を教えてください。 1 2022/08/25 22:54
- Word(ワード) office 2021へ自分用のクイックアクセスとマクロをコピーしたい 2 2023/03/11 21:15
- システム CSVファイルのマッピング処理の省力化 1 2022/11/24 00:01
- Excel(エクセル) 【VBA】指定フォルダに格納中のテキストファイルをエクセルで処理し結果のエクセルを新規フォルダに保存 1 2022/03/25 14:19
- Visual Basic(VBA) Excelのマクロについて教えてください。 作業フォルダ内に2つのファイルがあります。 このファイル 2 2023/07/09 13:40
- Excel(エクセル) Excel、同じフォルダ内のExcelファイルの特定シートのみを1つのファイルに集約したい 8 2022/09/07 15:12
- XML エクセルのマクロについて教えてください。 3 2023/02/06 09:06
- その他(Microsoft Office) WordやExcelについての質問です。先日姉から授業で使うという理由でパソコンを借りました。そして 3 2022/06/20 15:32
- Excel(エクセル) エクセルのマクロについて教えてください。 1 2023/02/21 09:28
このQ&Aを見た人はこんなQ&Aも見ています
-
性格の違いは生まれた順番で決まる?長男長女・中間子・末っ子・一人っ子の性格の傾向
同じ環境で生まれ育っても、生まれ順で性格は違うものなのだろうか。家庭教育研究家の田宮由美さんに教えてもらった。
-
Word差し込み後にセクション別に名前を付けて保存
Word(ワード)
-
(実行時エラー5852)ExcelデータをWordに差し込んだ後、Wordファイルを分割するマクロ
Word(ワード)
-
wordで10ページのものを1ページずつ分けたファイルにするには?
Word(ワード)
-
-
4
Wordで差込印刷した後に別々のファイル名をつける
Word(ワード)
-
5
個別に違う添付ファイルを付けて一括でメール配信をしたいのですが、EXC
Visual Basic(VBA)
-
6
差し込み後、元データを変更し 差し込み先に反映させるには?
Access(アクセス)
-
7
差し込み印刷の元データファイルの探し方
Excel(エクセル)
-
8
ページを抜粋して保存できますか?
Word(ワード)
-
9
Word差し込み印刷、フォルダの保存場所を変更すると
その他(Microsoft Office)
-
10
Word、Excelのファイル名に自動的に名前を付加する方法教えてください!
Excel(エクセル)
-
11
ワードで保存するファイル名の自動化
その他(Microsoft Office)
-
12
エクセルマクロで差し込みしたものを1つのファイルでPDF化したいです
その他(Microsoft Office)
-
13
ワードの差込印刷で金額にコンマをつける方法
Word(ワード)
-
14
ワードの条件で改行をさせるには
Word(ワード)
-
15
word差込印刷 _空白だった場合詰めて表示したい
Word(ワード)
-
16
1ファイルのWord文書を複数に区切って効率良く保存する方法
Word(ワード)
-
17
wordの差込印刷(ラベル作成)と、Excelのゼロ値非表示
Excel(エクセル)
-
18
Wordの差し込み印刷、元データーの確認
Word(ワード)
-
19
Word2003:セクション区切りすると、不要な空白ページができる
Word(ワード)
-
20
Word差し込み印刷 リストを2度使用したい②
Word(ワード)
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ファイルのアクセス回数について
-
エクセルのプロパティーでセキ...
-
ExcelブックをGoogleスプレッド...
-
Wordで差込印刷した後に別々の...
-
Excel csv保存 列数が異なる場...
-
エクセル UserForm 呼び出しで...
-
マクロ実行後、表示がおかしくなる
-
エクセルファイル名に更新日時...
-
エクセルの保存履歴を残す方法
-
【Excel VBA】ファイルを保存し...
-
実行時エラー52
-
VBAでエクセルで作成したフ...
-
EXCEL 検索時の設定
-
Excelのフッダ-に「ファイルの...
-
エクセルのマクロで行と列の削...
-
windowsでテキストファイルの各...
-
バッチファイル 二つ上のディ...
-
エクセルで複数のコメントのサ...
-
エクセルvbaでdocuworksprinter...
-
カンマ区切りのCSVファイルから...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ファイルのアクセス回数について
-
エクセルのプロパティーでセキ...
-
Wordで差込印刷した後に別々の...
-
ExcelブックをGoogleスプレッド...
-
Excel csv保存 列数が異なる場...
-
エクセル UserForm 呼び出しで...
-
エクセルファイル名に更新日時...
-
サブフォルダから部分一致のエ...
-
マクロ実行後、表示がおかしくなる
-
EXCEL 検索時の設定
-
PowerPoint 2002でファイル名を...
-
実行時エラー52
-
エクセルのマクロで行と列の削...
-
複数のexcelのファイルを一括で...
-
エクセルでcsvファイルを開いて...
-
VBAでマクロを使って、マクロ無...
-
For~Nextルーチンで最初の1回...
-
大量のCSVファイルをExcel形式...
-
vbaでボタンをクリックして上書...
-
エクセルの保存履歴を残す方法
おすすめ情報