プロが教える店舗&オフィスのセキュリティ対策術

環境:Office2007,管理者権限なし
ExcelVBA:数ヶ月の経験あり WordVBA:経験なし

目的:差込印刷の一連処理の自動化

ファイル群
----------------------------------------------------------------------
①Excel側の差込用シート
 列A:氏名(str) 列B:値1(int) 列C:値2(int)
②Word側ファイル
 [i]: [出力_表あり.Word]・・・(列B>0 & 列C>0)である行 が対象
               A:通常差込、BとC:用意した表内に差込
 [ii]: [出力_表なし.word]・・・[i]に該当しない行 が対象
               A,通常差込 BとC:0以上のデータを通常差込
----------------------------------------------------------------------

現在、①の列B,列Cの値に応じた②のWordファイル[i],[ii]を用意
手作業でそれぞれ差込しています
 (②の各Wordを開く→宛先の選択(①)→アドレス帳の編集→差込印刷→レターを保存)
条件ごとにWord側のテンプレがあり、表のA,B欄を空白にする類の方法は許可されていません


ここで質問なのですが、これらの処理の自動化は可能でしょうか?
----------------------------------------------------------------------
[理想1]:Wordは1ファイルに統合、[i],[ii]の条件に応じ表を(作成and削除)or(非表示and再表示)
    差込印刷から保存までの自動化 (出力レター分割の必要なし)
[理想2]:Wordは2ファイルのまま、宛先の選択→アドレス帳の編集の自動化
----------------------------------------------------------------------

実情として、実務での条件分岐はより複雑で、それに応じたWordも多い為、手作業での条件分岐処理のミスが怖い状況です。例外状況も頻繁に発生する為、[理想1]は変更処理が面倒で現実的では無いかも知れません

WordVBAの知識が無く、曖昧な質問となってすみません。ヒントだけでも頂けたら幸いです
一部処理の自動化や、別方向での解決策もあれば、ぜひご教授ください

以上、よろしくお願いいたします

A 回答 (2件)

普通の差し込み印刷をVBAで処理することから始めてはいかが。


そうしないと、条件を付けるだけでも大変だと思うので。
https://support.microsoft.com/ja-jp/help/285332/ …
https://docs.microsoft.com/ja-jp/office/vba/api/ …
http://www.fastclassinfo.com/entry/vba_word_cont …

VBAでの処理をする前に、私ならIFフィールドを使って条件処理を
しますね。
[アドレス帳の編集]での処理をしないで済みますので。

[アドレス帳の編集]での編集作業を希望するなら、[マクロの記録]
をとってから、必要な部分のみ活用するようにしたほうが簡単だと
思いますよ。
    • good
    • 1
この回答へのお礼

ご回答ありがとうございます

まさに、差し込み印刷の制御の知識が足りていませんでした
それぞれ別の手法を紹介して頂き、大変参考になります

現在、Excelシート上で差込条件分岐用の列を用意し、[アドレス帳の編集]でその列を用いてソートする苦肉の策を取っています
IFフィールドは、お恥ずかしながらその存在をたった今知りました。ぜひ活用させていただこうと思います

まずは参考URLで勉強し、差込用の.Wordファイルを減らすことを目標にしようと思います
重ねてありがとうございました

お礼日時:2018/12/19 20:53

数か月の経験があるのなら、ヘルプを読めばいい

    • good
    • 0
この回答へのお礼

ご回答ありがとうございます。
自宅PCはOffice365の為、互換性が無いかもな~と思い、怠っていました。
ヘルプも読んでみます、ありがとうございます!

お礼日時:2018/12/19 20:53

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!