- ベストアンサー
wordのマクロがわかりません。。。
wordのマクロの解析ができません。 どなたかお願いします。 できれば、行ごとの意味教えて欲しいのですが Application.Dialogs(wdDialogMailMergeOpenDataSource).Show With ActiveDocument.MailMerge .Destination = wdSendToNewDocument .SuppressBlankLines = True With .DataSource .FirstRecord = wdDefaultFirstRecord .LastRecord = wdDefaultLastRecord End With .Execute Pause:=True End With よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
1.Application.Dialogs(wdDialogMailMergeOpenDataSource).Show 「ワードの組み込みダイアログ(Application.Dialogs)”データファイルの選択ダイアログ”(wdDialogMailMergeOpenDataSource)を開け(.Show)」です。 wdDialogMailMergeOpenDataSourceの部分が、ダイアログの種類なので、ここを変更すれば、 ファイルを開く(wdDialogFileOpen) 印刷する(wdDialogFilePrint) などのダイアログを表示できます。 2.With ActiveDocument.MailMerge With ○○ ・ ・ ・ End With このWith~End Withの間は、○○っていうオブジェクト名を省略できますよ~ってことです。 With ActiveDocument.MailMergeがないと、それ以下のコードが、 ActiveDocument.MailMerge.Destination = wdSendToNewDocument ActiveDocument.MailMerge.SuppressBlankLines = True With .DataSource ActiveDocument.MailMerge.DataSource.FirstRecord = wdDefaultFirstRecord ActiveDocument.MailMerge.DataSource.LastRecord = wdDefaultLastRecord End With ActiveDocument.MailMerge.Execute Pause:=True っていうふうに、おんなじコードを何回も書かなくてはなんないので、省略する為に使います。 3..Destination = wdSendToNewDocument は、差し込み文書の送り先の設定をしています。wdSendToNewDocument(新いい文書)になっているので、 「差し込み先は、新しい文書」に設定してます。 4..SuppressBlankLines = True SuppressBlankLinesは、空白の差込フィールドの印刷をするかどうかの設定なので、 Trueを設定しているので、「空白の差込フィールドは印刷しない」になります。 5.With .DataSource 上記With同様です。 ここから次のEnd Withまでは、ActiveDocument.MailMerge.DataSourceが省略されてます。 6..FirstRecord = wdDefaultFirstRecord 差し込むデータの最初のレコード番号を設定しています。 wdDefaultFirstRecordなので、最初のレコードになります。(たぶん^^;ここはちょっと自信ないです^^;) 7..LastRecord = wdDefaultLastRecord 差し込むデータの最後のレコード番号を設定しています。 wdDefaultLastRecordなので、最後のレコードになります。(たぶん^^;ここはちょっと自信ないです^^;) 6.7で、おそらく、差込データは最初から最後までに設定しているのだと思います。 8.End With 上記5.の終了部分です。これ以降は、ActiveDocument.MailMergeまでしか省略されていません。 9..Execute Pause:=True Executeで、「実行」の意味なので、「差込印刷の実行」になります。 ただし、Pause:=Trueがあるので、差し込み印刷時にエラーが発生した場合に、Word が一時停止し、トラブルシューティングのダイアログ ボックスが表示されます。 10.End With 2.のEnd Withです。 これ以降は、省略されているオブジェクト名はありません。 長くなってしまって、わかりづらかったかもしれませんが、ご参考まで。
その他の回答 (1)
- imogasi
- ベストアンサー率27% (4737/17070)
下記のサイトを出し、プロパティやメソッドや関連の語句をいろいろ辿っていくと、すべて解説が出てきます。 http://www.microsoft.com/japan/developer/library/off2000/vbawrd/woobjMailMergeDataFields.htm