• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ExcelのVBAでファイルを一括移動)

ExcelのVBAでPDFファイルを一括移動する方法

このQ&Aのポイント
  • ExcelのVBAを使用して、PDFファイルを自動作成し、一括移動する方法について説明します。
  • 現在、PDFファイルを作成した後、ファイルを移動して削除する作業を繰り返していますが、一括移動したい場合にはワイルドカードを使用することはできません。
  • しかし、シート全体のファイル作成が終わった後に一括移動する方法もあります。その場合は、作成したPDFファイルを一度保存し、最後に一括移動して削除することができます。

質問者が選んだベストアンサー

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.2

>すでに同一名のファイルが存在する場合は、 >上書きせずにエラーになるのですね。 それなら、CopyFileメソッドとDeleteFileメソッドを使用すればいいと思います。 CopyFileメソッドでは、第3引数で上書きする・しないの指定が出来ます。 また、両メソッドとももちろんワイルドカードが使用出来ます。 詳細は、先のMicrosoftのページの下の方の参照で、それぞれのメソッドのページへ行ってみて下さい。

dogs59
質問者

お礼

ありがとうございました。これでうまくいきそうです。

全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (1)

  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 ファイルシステムオブジェクトを利用すれば出来ます。 Dim myFSO As Object Set myFSO = CreateObject("Scripting.FileSystemObject") myFSO.MoveFile "C:\Documents and Settings\administrator\デスクトップ\*.pdf", _     "D:\documents\temp\" & (ブック名) & "\" & (シート名) & "\" Set myFSO = Nothing ファイルシステムオブジェクトについては、以下のページを参考にして下さい。 http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/script56/html/jsmthmovefile.asp

参考URL:
http://www.microsoft.com/japan/msdn/library/default.asp?url=/japan/msdn/library/ja/script56/html/jsmthmovefile.asp
dogs59
質問者

お礼

ありがとうございました。  エラーが出るのでなぜかな?って思っていたら、すでに同一名のファイルが存在する場合は、上書きせずにエラーになるのですね。  仕方がないので、以前の方法で試しています。 他にも時間短縮しなくてはいけない個所はたくさんあるので。

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • エクセルVBAでブックを開きたいのですが、

    エクセルVBAでブックを開きたいのですが、 アクティブシートを別のブックに移動させたいのですが、 まず、目的のブックを開く → 移動させたいシート名を右クリック → 移動またはコピー を選択 → 移動先ブック を選択  というふうにしようと思っていますが、 Workbooks.Open Filename:= _ "C:\Documents and Settings\YUMIKO\My Documents\YYYY.xls" のようにファイル名を入れると開くことができました。 が、   Workbooks.Open Filename:= _ "C:\Documents and Settings\YUUKORON\My Documents\Range("F1").Value.xls" のように、アクティブシートの セルF1にファイル名を入れて、開きたいのですが、どうしても開くことができません。いろいろ調べて試しましたが、無理でした。 基本的にマクロで記録で作っている初心者です。 回答よろしくお願いします。

  • my documentの移動とデスクトップ

    今マイドキュメントを増設ハードに移動しました。しかしデスクトップフォルダ(ローカル ディスクC Documents and Settings Administrator デスクトップ)の移動方法がわからないため、「解凍でデスクトップにファイルができた→マイドキュメントに移動」などの際にデータの移動に時間がかかってしまっています。 デスクトップフォルダもマイドキュメントフォルダのように移動することは可能なんでしょうか?

  • エクセル VBAにて

    デスクトップに置いた [C:\Documents and Settings\既定\デスクトップ\db1.mdb] というファイルをエクセルのVBAで起動するにはどのようにしたらよいでしょうか

  • デスクトップ上に消せないファイルがあって、なんとか消したいです。

    デスクトップ上に消せないファイルがあって、なんとか消したいです。 消そうとすると 「ファイルを削除できません。または送り側のファイルまたはディスクから読み取れません」 というエラーメッセージがでるので、こちらの質問集を見て質問番号:5226714 の良回答さんのやり方を試してみたのですが、そうすると C:\Documents and Settings\Administrator\デスクトップ\ファイル名が見つか りませんでした。 となりました・・・。 どうすれば、消せるでしょう? 「コマンドプロンプト」自体この操作で初めて使ってみて、あまり理解できず困っています。 よろしくお願いします。

  • リンク切れのデスクトップアイコンを削除できない

    デスクトップPC、WinXP-SP3です。 元々Cドライブにあった「デスクトップ」をDドライブに変更すべく、「C:\Documents and Settings\All Users\デスクトップ」というフォルダをDドライブのルートディレクトリに移動しました。 その後、「デスクトップ」という名のフォルダが、「C:\Documents and Settings\ユーザ名」や「C:\Documents and Settings\Default User」などにもあることが分かり、デスクトップフォルダを相互に移動上書きしたり、フォルダ内のショートカットを削除なりした結果、デスクトップ画面に削除できないアイコンがいくつか残ってしまいました。削除しようとしても「ファイルを削除できません。送り側のファイル又はディスクから読み取れません。」というエラーメッセージが出ます。どうすれば削除できるのでしょうか。 ちなみに、現在、「デスクトップ」フォルダは、 ・C:\Documents and Settings\Administrator\ ・C:\Documents and Settings\All Users\ ・C:\Windows\system32\config\systemprofile\ ・D:\ の4ケ所にあり、いずれのフォルダ内も空の状態です。 この状態にも拘わらず、ディスプレイの画面には、上記リンク切れアイコン(画面から消去できないアイコン)が残っているのです。 なお、冒頭に記述しましたDドライブへ移動した「デスクトップ」フォルダは、All Users\のものだったかどうかちょっと自信がありません(「ユーザー名\」のものだったかも?)。

  • Windows2000でデスクトップでアイコンが等間隔整列できない・・・・・。

    最初、間違って別のユーザーIDを作ってログインしてしまい、 それを削除→そのときのデスクトップの内容をAdministratorにコピーしたのですが、デスクトップでアイコンが等間隔整列できなくなってしまいました。 C:\Documents and Settings\All Users\デスクトップ            ↓ C:\Documents and Settings\Administrator\デスクトップ みたいに属性を全部変えることはできますか?

  • VBA フォルダ内にファイルが存在するか確認したい

    OS: WindowsXP Office: 2003 ExcelVBAについて教えてください。 VBAで特定のフォルダー内でファイルが存在するかの確認をしたいのです。 例えば、以下のようなフォルダーに営業日がファイル名に付いた複数のファイルがあります。  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120201.xls  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120202.xls  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120203.xls  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120206.xls  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120207.xls  C:\Documents and Settings\aaa\デスクトップ\作業\報告書20120208.xls 処理は20120201(2012年2月1日)から順番に行うのですが、その際、 報告書20120203.xlsはファイルが存在しているので変数1を返す。 報告書20120204.xlsは休日のためファイルが存在しないので変数0を返す。 次の処理で変数1の場合は処理をし、変数0の場合は処理を飛ばすと言った内容のマクロを考えています。 要はフォルダー内にファイルが存在するかしないかの部分のマクロ記述を知りたいのです。 どなたか、よろしくお願いします。

  • htmlファイルをpdfにすると、下の欄に内部パスと作成時間が出てしまう

    pdf 作成について。htmlファイルをpdfにすると、下の欄に内部パスと作成時間が出てしまうのですが、これを出ないようにするにはどうしたらいいでしょうか。 内部はパスと言うのは、 次のようなものです。 file:///C|Documents and Settings/abcd/デスクトップ/ccccc

  • VBAで、指定したファイルを読み込めません。

    ファイルを読み込むマクロを作ったのですが、「ファイルが見つかりません」というメッセージが出てしまいます。 Open "C:\Documents and Settings\Owner\デスクトップ\textfile.txt" For Input As #1 どこか、 間違ってがっているのでしょうか。

  • フォルダ&ファイルをこのように効率的にコピーや削除するbatファイルは?

    Windows2000の環境です。 192.168.0.1(ファイルサーバ) | |─192.168.0.2 | 192.168.0.3 という環境です。 192.168.0.2や192.168.0.3のファイル&フォルダ環境を出来るだけ統一したく思っています(192.168.0.2と192.168.0.3を同時に使用することはありません)。 ログオフ時に \\192.168.0.2(3)\Documents and Settings\root\デスクトップ\ 下の子フォルダ&孫フォルダ&ファイルを \\192.168.0.1\Documents and Settings\root\デスクトップ\ に移して ログイン時には逆に \\192.168.0.1\Documents and Settings\root\デスクトップ\ 下の子フォルダ&孫フォルダ&ファイルを \\192.168.0.2(3)\Documents and Settings\root\デスクトップ\ に移したいのですが 単にログオフ時に \\192.168.0.1\Documents and Settings\root\デスクトップ\ の子フォルダ&孫フォルダ&ファイルを全削除して \\192.168.0.2(3)\Documents and Settings\root\デスクトップ\ の子フォルダ&孫フォルダ&ファイルを全コピーするとフォルダサイズとかが大きい場合にはログイン完了やログオフ完了までかなりの時間がかかってします。 それでタイムスタンプが同じファイルは無視して \\192.168.0.2(3)\Documents and Settings\root\デスクトップ\ 下にあってタイムスタンプが新しいものは \\192.168.0.1\Documents and Settings\root\デスクトップ\ 下にコピー そして \\192.168.0.2(3)\Documents and Settings\root\デスクトップ\ 下に存在してなくて \\192.168.0.1\Documents and Settings\root\デスクトップ\ にあるものは削除するようにする。 ログイン時には同様の逆の手順で行えば単時間で \\192.168.0.2\Documents and Settings\root\デスクトップ\ と \\192.168.0.3\Documents and Settings\root\デスクトップ\ ともコピー&削除作業時間を浪費せずに同じフォルダ&ファイル環境を築けると考えます。 このようにするにはbatファイルをどのように記述すれば宜しいでしょうか?

専門家に質問してみよう