アプリ版:「スタンプのみでお礼する」機能のリリースについて

ワード2007を使用しています。

エクセルデータから差し込みをしたワードファイルがあります。
100ページ以上あるものを、手っ取り早くページごとに分割したいのです。

私なりにいろいろ調べて、そのようなことができるマクロがあるようなのですが思うように動きません。

http://support.microsoft.com/kb/306348/ja

こちらのサイトのセクションことに分割するマクロを使用してみたのですが、うまくいきません。
マクロを実行するのは差しこみを設定した文書でいいのでしょうか?
それとも差し込み済みで複数ページに出来上がった文書に対して実行するのでしょうか?

後者のほうにマクロを実行すると

実行時エラー’5156’
「文書を作成、または保存することができません。保存先のディスクに十分な空き容量があること、書き込み禁止に設定されていないこと、またディスクが壊れていないことを確認してください。」

というメッセージが出ます。

また、以下のようなプログラムもネットから引用してみたのですがうまくいきませんでした。



Sub データごとにファイルを分ける()
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


何をどうしたらできるようになるのかわかりません。

お分かりになる方、是非教えていただきたいです。

よろしくお願いいたします。

A 回答 (1件)

Windows Vista を実行しているコンピューターで、Word2007文書


をVBAで保存しようとしている場合の保存先の問題のようです。
おそらくこちら↓のエラーメッセージと同じことだと思います。

Word 2007 文書を保存しようとすると、エラー メッセージ:
「この場所に保存する権限がするありません」またはファイル名
を指定して実行時エラー '5156'
http://support.microsoft.com/kb/923917/ja

セキュリティで保存先が"C/"直下などに保存できないようです。
保存先を変更する必要があるようなので、書き換えてみては。

マクロについては http://support.microsoft.com/kb/306348/ja
を使うとして、以下のように直してみてはいかが。
マクロはすべて記載すると長いので、省略してます。
変更部分だけを記載しますので、以下の部分だけ書き換えます。
usernameは質問者のドライブにあるユーザー名に書き換えます。

ChangeFileOpenDirectory "C:\Users\ username \Documents\"

保存先については、以下の場所以外の通常Wordファイルを保存
しているフォルダでもよいと思います。
"C:\Users\ username \Documents\"

ちなみに、マクロは差し込み済みで複数ページに出来上がった
文書に対して実行しますが、この文書が実行後に消えるので、
名前を付けて保存しておくとよいと思ます。

マクロについての補足質問はしないでくださいね。
私自身、あまり得意ではないので。
    • good
    • 0
この回答へのお礼

で・・・・できました!!!

もう何日もうまくいかなくて困っていたのでものすごくうれしいです!!

ありがとうございました!!

お礼日時:2010/11/16 09:35

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