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

Wordで差し込み印刷をする際に、フォルダの保存場所を変更すると、
再度、差し込みデータの設定が必要になってきます。

これを避けたいのですが、なにかいい方法はないでしょうか?

使用しているファイル
・元データ(Excel)
・差し込み先1
・差し込み先2

上記のファイルがあり、元データの項目を参照して、
Word側のアドレス帳の編集から、フィルタをかけ差し込むデータを分けています。

そのため、データファイルの設定だけではなく、
データ項目の設定もする必要があるため、保存先を変更すると面倒な状況です。
共有ファイルには入れたくないファイルです。
また、データの更新が常に必要なファイルでもあります。
細かい文字設定等も必要なので、差し込み先のファイルをExcelで作ることも、
難しい状況です。
例えば、テキストボックスの中に表を作ったりすることが必要。

http://oshiete1.goo.ne.jp/qa4142966.html
こちらの質問を読みと、
>差し込み印刷用のデータファイルを絶対パスで記録している(相対パスで記録していない)ようで
とありますが、
なんとか、相対パスで記録する裏技のような方法はありませんか?

A 回答 (1件)

こんにちは。



> Wordで差し込み印刷をする際に、フォルダの保存場所を変更すると、
PC環境が変われば変わりますから仕方がないのは分かりますが、もともと、差し込み印刷用のデフォルト・フォルダというのは決められているはずですから、あまり場所を移動するということは避けたほうが良いのではないかと思います。

ここがデフォルトです。(以下はデフォルトパスに設定しています)
C:\Documents and Settings\{User ID]\My Documents\My Data Sources\

リンク先の「08/07/01 13:09質問番号:4142966」の Office 2000 とOffice 2003 ですと、デフォルトの設定は違ってきてしまいます。

なお、差し込み印刷用のフィールドはすでに存在して、実際にデータが変更できていることが条件です。

'-------------------------------------------
'ThisDocumentモジュール
'実行するとダイアログが立ち上がって、テーブルを選択してください。リンク先が変わります
Sub ChangingDataSourceLink()
  Dim myPath As String
  Dim myData As String
  Dim Mydoc As Document
  
  Set Mydoc = ActiveDocument
  
  myData = "DateData.xls"
  'パス名(SpecialFolders は、User ID の下のMyDocuments までの取得している)
  myPath = CreateObject("WScript.Shell").SpecialFolders("MyDocuments") & "\My Data Sources\" & myData
  If Dir(myPath) = "" Then
    MsgBox myPath & vbCrLf & "ファイルが見つかりません。", vbInformation
  Else
    On Error Resume Next
    With Mydoc.MailMerge
      .MainDocumentType = wdFormLetters
      .OpenDataSource Name:=myPath, LinkToSource:=True, _
      AddToRecentFiles:=False
    End With
    On Error GoTo 0
  End If
  Set Mydoc = Nothing
End Sub
    • good
    • 1
この回答へのお礼

回答ありがとうございます。
すみません。急いでいたのでVBAの使用を避けたかったこともあり、メモリに移動してそっちで管理するようにしました。

お礼日時:2009/10/28 15:42

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A