- ベストアンサー
ファルダ内に散在してるファイルを検索し一箇所にコピーしたい
Excelセルに記述したファイル名(ワイルドカード指定可)で、 フォルダ、サブフォルダ内に、ばらばらに散らばっているファイルを 検索し、見つけたら特定のフォルダに全部集めたい(コピーしてくる)のですが、スクリプトをご教授いただけないでしょうか? よろしくお願い致します。
- THUBAN
- お礼率76% (771/1002)
- Visual Basic
- 回答数1
- ありがとう数1
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
★『EXCEL』って事は『VBA』ですよね。 ・『VBScript』のスクリプトでのお話ですが、サンプルを載せます。 ・上手く『VBA』用に書き換えてみて下さい。→参考になればと思い。 'Excel セルに記述したファイル名(ワイルドカード指定可) strFindPath = "C:\Excel\*.txt" 'コピー先(移動先)のフォルダ名(全部集めたい場所) strCopyPath = "C:\AllFiles\" Call CustomCopyFile(strFindPath,strCopyPath) '処理ルーチン Sub CustomCopyFile(BasePath,CopyPath) Set objFS = CreateObject("Scripting.FileSystemObject") Set objFolder = objFS.GetFolder(BasePath) 'ファイル名(ワイルドカード指定可)の検索 For Each objFile In objFolder.Files strFname = objFolder.Path & "\" & objFile.Name 'コピー処理 objFS.CopyFile strFname, CopyPath 'objFS.MoveFile strFname, CopyPath Next End Sub 最後に: ・ソースを見やすくするために全角スペースでインデントしています。 参考にするときは、タブ文字などに変換してお使い下さい。 ・『strFindPath』に検索するファイル名を指定します。 ・『strCopyPath』に移動するフォルダ名を指定します。→最後に『\』を必ず追加します。 ・『CustomCopyFile』を呼び出すと指定された『strFindPath』のファイル名を検索して 『strCopyPath』で指定されたフォルダにコピーします。 なお、コピーではなくて移動ならば『objFS.CopyFile』、『objFS.MoveFile』に変更して下さい。 ・『VBScript』のスクリプトですので、上手く『VBA』用に書き換えてみて下さい。 ・以上。おわり。
関連するQ&A
- VBAで複数のフォルダから最新のファイルを検索してコピーするには?
はじめましてこんにちは!エクセルを少しいじり始めた者です。 エクセルのVBAで複数のフォルダから最新更新日のファイルを検索して特定シートのセルD1からF20までをコピーして貼り付けるにはどのようにコードを書いたらいいのでしょうか?具体的に申し上げますと、ある特定のフォルダの中に複数のフォルダが入っており、複数のフォルダにはそれぞれ同じ名前の後に日付が入っていて、さらにその中には同じファイル名の後に日付が付いているファイルがあります。(「日本」フォルダの中に「日本200401」、「日本200402」、「日本200403」フォルダが入っていてさらにそれぞれのフォルダ内には「全国200401」」、「全国200402」、「全国200403」みたいな感じでフォルダ名と同じ日付が付いたファイルが入っています。) その複数のフォルダの中から最新更新日時のファイルだけを開いて特定のシートからデータをコピーして貼り付けるにはどのようにコードを記述したら良いのでしょうか?
- 締切済み
- オフィス系ソフト
- OSXにて複数画像ファイル検索・コピー
OSXにて同名の画像ファイル(拡張子以外)をまとめて複数検索(ハードディスク内)して特定の場所に自動でコピーさせることは可能でしょうか? 例 aaa.jpg bbb.jpg ccc.jpgを検索 ↓ aaa.eps bbb.eps ccc.epsを指定したフォルダーなどにコピー フォルダアクションで、jpg画像を入れるとepsファイルが検索されコピーされるとか、テキストでファイル名を渡すと検索されコピーされるとかあると非常に助かります。 できれば、無料のアプリか簡単なスクリプトなどでできると更に助かります。 良い知恵をお持ちの方がいらっしゃいましたら、よろしくお願いいたします。
- 締切済み
- Mac
- バッチファイル 検索してコピーするには
cドライブのaaaフォルダ内にあるエクセルファイルをサブフォルダ内も検索し、Eドライブにコピペするコードを見つけました。 実行してみますと、aaa内に含まれるサブフォルダ内にあるエクセルファイルはコピペされますが、 aaaの直下にあるエクセルファイルはコピぺされません。 これもコピペされるようにするには、どうすれば良いか教えてください。 @echo off set Folder1=C:\aaa rem ・コピー先 set Folder2=E:\ set File=*.xls cd /d %Folder1% for /d /r %%a in ( * ) do copy "%%a\*%File%*" "%Folder2%" pause
- ベストアンサー
- その他(プログラミング・開発)
- 特定のフォルダ内だけのファイル名の検索を行なうには?
特定のフォルダ内だけのファイル名の検索を行なうには? Windows XP においては、エクスプローラ内で選択した特定のフォルダ上でマウスの右クリックから[検索]を選べば、その特定のフォルダ内(のサブフォルダを含めるか否かの選択も可)だけのファイル名を検索できます。 それと同様のことを Windows 7 ではどのようにしたら実現できますか?
- ベストアンサー
- Windows 7
- VBScript フォルダ以下からファイルの検索、コピー
VBScriptはまったくの初心者ですので、自分なりに調べてはみたのです がどうしてもわからなかったため質問しています。 OSはWinXPになります。 VBScriptで特定のフォルダ(C:\AAA\)以下からファイル(*.txt)を検索し てコピーするプログラムを書きたいです。 C:\AAA\・・・\*.txt 指定したフォルダからファイルを検索をすることはできたのですが、サ ブフォルダがたくさんある場合のファイル検索ができませんでした。 コピーの仕方は検索したファイルから最新のタイムスタンプのファイル以外を別フォルダにコピーしたいです。 あとわかりやすいVBScriptについて記載されているサイトも教えていただけると助かります。
- ベストアンサー
- その他(プログラミング・開発)
- vbs ファイル検索後、任意の場所にコピー
vbsにて、以下のようなことを実現したいのですが、よくわからないので、ご教授願います。 ・実現したいこと インプットボックスに検索したいファイル名を張りつけて、検索対象ディレクトリ配下から、ファイルを任意の場所にコピーしたい。 コピー参照元は、3つ別々のディレクトリ配下の中から、一つ指定して、検索としたい。 対象ファイルが見つかったら、保存先をフォルダを指定できるダイアログを表示して、任意の場所にコピーしたい。 vbsでの作成方法がよくわからないので、ご教授いただければ助かります。宜しくお願いいたします。
- 締切済み
- Visual Basic
- ファイル名の取得(エクセルVBA)
エクセル97を使用しています。 過去ログを見て、ファイル名の取得にDir関数が使えることは、判ったのですが、不特定数のファイル名に対応する方法が思いつきません。 特定のフォルダ内の、数が可変するファイルのファイル名を、検索した時点で、全部セル(または変数でも可)上に取得する方法って、ありますでしょうか? よろしくお願いします。
- ベストアンサー
- オフィス系ソフト
- Appleスクリプトでフォルダ内ファイルを開く方法
フォルダ内にエクセルファイルが1000個程あり、 そのエクセルファイルを一つずつ開いて、 別のファイルにそのファイルの値をコピーするということをやりたいと思います。 別のファイルにそのファイルの値をコピーするというのは、 自分でも何とかできそうなので、 (1)ファイルが入ったフォルダを、ダイアログで指定する方法 (2)フォルダ内のエクセルファイルを順番に開いて、作業が終わったら閉じる方法 のAppleスクリプトでの記述方法を、教えていただけないでしょうか? Windowsのエクセルファイルでマクロを作成したのですが、 Macでは動かず、調べるとAppleスクリプトで作成するということが分かりましたが、 そこから先が、本当にお手上げ状態です。 どうぞよろしくお願いします。
- ベストアンサー
- その他(プログラミング・開発)
- ExcelVBAマクロでファイル検索してコピー方
ExcelVBAマクロについて確認させてください。 C:\test\フォルダ内で指定のファイル名(例えばAAA.xlsx)を検索して それをC:\test2\フォルダ下にコピーする方法をご教授くださいm(_ _)m
- ベストアンサー
- Visual Basic
- 既存のExcelファイルをコピーして、コピーしたファイルに画面内容を転記する方法
タイトル通りの質問です。 流れ的には、こんな感じになると 思われますが、文法等がイマイチ 分からなかったので書き込みしました。 お分かりの方がいらしたら、お願い致します。 Option Explicit 変数の指定 Private Sub 実行ボタン_Click() Excelファイルをコピー コピーしたExcelファイルをオープン 指定したセルに画面内容(テキストボックス)を転記 コピーしたExcelファイルをクローズ End Sub
- ベストアンサー
- Visual Basic
お礼
ありがとうございました。 いただいた内容を参考に、VBAスクリプトを考えてみたいと思います。