• ベストアンサー

エクセルVBAで、前回開いたフォルダ内の違いを見つける

フォルダ(マンション)の中にフォルダ(部屋)があります。 フォルダ(マンション)はひとつですが、フォルダ(部屋)は たくさんあります。 (例)「部屋1、部屋2・・・など」 そのフォルダ(部屋)の中にエクセルファイルや、テキストファイル 等が入っています。 フォルダ(部屋)は何部屋もあり、その中のファイルが追加されたり、削除されたりするので、その“部屋”の名前が知りたいのです。 コードを実行すると、「部屋3にファイルが追加されました」などという 情報を書き出しできればいいと思っています。 こういうものですが、作る上の考え方だけでも結構ですので教えていただけたら助かります。

  • wait4u
  • お礼率45% (619/1365)

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

  • ベストアンサー
  • KenKen_SP
  • ベストアンサー率62% (785/1258)
回答No.2

こんにちは。 Vector 新着ソフトレビューより ■フォルダ監視 [フリーソフト] フォルダを定期的にチェックし、ファイルの追加・変更などを通知 してくれるソフト http://www.vector.co.jp/magazine/softnews/041027/n0410272.html Excel VBA 単体で考えるよりも上記のようなツールとの組み合わせ技 を考えてみてはどうですか?   # ツールは一例ですが、このようなツールの使用だけでご希望を   # 満たす気はしてます。 もし、Excel VBA を使うとすれば上記ツールなどで出力させたログを 読み込んで、シートに展開するもの....を考えるとか。 全て自前でと考えるとプログラムのテクニックで言えば、かなり難しい 課題ですよ。

wait4u
質問者

お礼

これば今の目的にぴったりのものですね。やはりもう少し 勉強してみる間、これ使ってみようと思います。ありがとうございました。

その他の回答 (1)

  • bin-chan
  • ベストアンサー率33% (1403/4213)
回答No.1

FileSystemObjectで、指定のフォルダ(マンション)とその配下のフォルダ(部屋)をすべて検索し、すべての情報(ファイル名・サイズ・タイムスタンプ)を保持しておく。 ※フォルダ(部屋)は「サブフォルダ」と表記しますよ。 で、次回開いたときも指定のフォルダ(マンション)とその配下のフォルダ(部屋)をすべて検索する。 その上で、その差分を検出する。 といった流れでしょうか。

wait4u
質問者

お礼

ありがとうございました。質問前に自分なりに調べて、私も そう考えました。やはりそういったコードが必要になるのでしょうか。 勉強してみます。

関連するQ&A

  • フォルダー内の特定excelファイルを開く方法

    フォルダー内の特定excelファイルを開く方法 フォルダー内にたくさんエクセルファイルがありますがACCESSのフォームから特定excelファイルを開きたいです。したいことはフォームの中にテキストボックスを配置し、中にエクセルファイルの名前に記入し、実行ボタンを押すと一致するファイル名前を開くようになってほしいです。 どうせればよいかわかりません。ACCESSの初心者ですので助けください!

  • (VBA)フォルダの中の複数のテキストファイルをエクセルに取り込みたい

    フォルダの中に複数のテキストファイルがあります。 それをVBAで1シートに1テキストファイルづつで取り込んで(区切り文字(#)、列のデータ形式(文字列)を指定して)作成済みのマクロを実行し、出力させたいのですが。。 データが大きいので5シートで1つのファイルにしたいです。フォルダの中にはテキストファイルが100ほどあるので、結果、エクセルファイルが20できればいいのですが。。 できればデスクトップに新しいフォルダが作成されてその中に出力されていくようにしたいです。 お力を貸してください。よろしくお願いします。

  • エクセルVBAでフォルダ指定後、フォルダ内のファイル操作について

    あるフォルダ内に大量のフォルダ(フォルダ名は日時)があり、その各フォルダ内にテキストファイルが001.txt、002.txtとあります。 それぞれのテキストファイルの名前をフォルダ名(日時)とテキストファイル名を組み合わせたファイル名にしたいです。 イメージ)  最初に大元のフォルダを選択。     ↓  選択されたフォルダ内にある大量のフォルダから  それぞれのフォルダ名をフォルダ内のテキストファイルへファイル名を変更する。 例)フォルダ名「2006-08-28 11-30」   テキスト名「001.txt」   このファイルを「2006-08-28 11-30-001.txt」 みたいにしたいです。 非常にわかりにくいかもしれません。。 これができると非常に助かりますので、是非ご教示お願いします。

  • Excel VBAで、エクセルファイル作成について

    エクセルのVBAでプログラムを作成しているのですが、 ある数字を入力してプログラムを実行すると、その数字の名前のフォルダが作成され、更にその作成されたフォルダの中に、その数字の名前のエクセルファイルを作成できるようにしたいと思っています。 それでフォルダの作成はできるのですが、ファイルの作成が上手くいきません。 どうすれば良いか教えて頂けないでしょうか?よろしくお願いします。

  • Excelマクロで複数のファイルを開く方法

    Excel VBAでそのマクロを実行するファイルと同じフォルダにある 複数のテキストファイルを全て開いて、ある処理を実行して それを名前を変えた別のテキストファイル(元のテキストファイル名に 何らかの名前を追加する形が望ましいです。)として保存する マクロを作成したいのですが、可能でしょうか。 当方、初心者につき申し訳ございませんがよろしくお願い致します。

  • EXCELを使ったファイル削除

    あるフォルダの中に0~1000のように名前のついたファイル(拡張子は全て同じ)があります。 そのうちEXCELファイル1シートのAの列に並んだ数値のファイルのみをフォルダから削除をしたいです。 何かソフトを使ったりして出来るでしょうか? フォルダ内 (1.txt,2.txt,3.txt・・・) EXCELファイル A B C D・・・ 1 2 2 5 3 10 4 999 上の例だとフォルダ内の2.txt,5.txt,10.txt,999.txtを削除する。

  • EXCELファイルを閉じる時に、あるフォルダ内の全ファイルを削除して、空にすることは、可能でしょうか

    ■ あるフォルダに、テキストファイルを複数、置いてから、EXCELを起動し、 EXCELに、テキストファイルを、1件読み込んでは、作業することを、 テキストファイル全件について、行っています。 ■ EXCELファイルを閉じる時に、 用済みとなった、そのフォルダの、すべてのテキストファイルを、 自動的に削除してくれると、とても助かるのですが、 そういったことは、できないのでしょうか? ■ 現在は、EXCELファイルを閉じた後に、 手作業で、あるフォルダ内の、全テキストファイルを削除しています。 ■ EXCELに、そういう機能は、なさそうだと見ていますが、 何かの機能を使用したりして、 こういったこと(閉じると同時に、自動で、ファイル削除)が可能になったら、 とても、ありがたいです。 ■ 何か、ご存じの方がいらっしゃいましたら、 ぜひ、お教えください。 どうか、よろしくお願いします。

  • エクセルVBAでVBAの修正は出来るのでしょうか?

    エクセルVBAでVBAの修正は出来るのでしょうか? あるエクセルファイルにマクロを組み込んでいます(ユーザーフォームも使用)。 このエクセルファイルを複数個フォルダ内にコピーしています。 このコピーした全てのファイルのマクロの修正をVBAで出来ないかと考えています。 修正箇所はモジュール内のコード修正、モジュールの追加、既存のユーザーフォームにボタン等の追加等です。 エクセルは2003を使用しています。 どなたか教えてください。

  • Excel VBAでサブフォルダ内のファイルを呼び出したい

    フォルダの下に複数階層のサブフォルダがあり、その下に複数のエクセルブックがあります。これらのブックのシート複数ですが、名前は統一されています。 これらのファイルを呼び出した上でのある特定の名前のシートを呼出し、それぞれ1枚のシートに上から順に貼り付けたいと考えています。 よろしくご教授お願いします

  • VBA_フォルダ内複数のExcelファイルの集約

    Excel VBAに関する質問です。 特定のフォルダ内(例としてC:\folder1)の複数のExcelファイルにおける シート(例としてSheet1)内のセル範囲A2:I1000の情報をコピーし、 特定のフォルダ内に格納されたExcelファイル(例としてC:\tougou\tougou.xls)の シート(例としてTOUGOU)内のA2を起点に貼り付け処理をしたいのですが、可能でしょうか? <貼り付けイメージ> (例)特定のフォルダ内(例としてC:\folder1)のExcelファイル数が2つの場合 A2 B2 ・・・・・I2 ・ ・ ・ ・ ・ A1999・・・・・・I1999 A2~I1999の範囲にデータが集約される。 どうぞよろしくお願いいたします。

専門家に質問してみよう