フォルダを別フォルダに保存するエクセルマクロ

普段仕事などで使用するエクセルファイル(excel file)はフォルダ(folder)に保存されていることが普通だと思います。

そのフォルダには複数のエクセルファイル等が保存されており、ぞのフォルダ全体を別のフォルダに保存したい場合があります。

例えば、普段は自分のみ、或いは自分の部署のみが使用しているフォルダを、別の人、或いは別の部署と共有したい、または、定期的に簡単に保存日時が分かるように保存したい場合など。

私はこのマクロを使用して、毎日業務終了時点のエクセルファイルをフォルダごと共有フォルダに保存していました。エクセルに変更を加えたい場合など、その変更作業前にバックアップをしておく時にも活用でき、ボタン一つで決められた場所に日時を加えた状況で自動保存できるので、大変便利で皆活用していました。


マクロコード

===============================

Dim FSO As Object

Set FSO = CreateObject("Scripting.FileSystemObject")


FSO.CopyFolder "‪C:\Users\takes\Desktop\Work", _

"C:\Users\takes\Desktop\Share\Work " & Format(Now, "yyyy-mmdd-hhmm")


Set FSO = Nothing

===============================


解説
  1. 一文が長く改行したい場合は、半角スペース+_ で改行します。
  2. "‪C:\Users\takes\Desktop\Work", は保存したいフォルダのパス
  3. ""で囲み、カンマを加えます。
  4. "C:\Users\takes\Desktop\Share\Work " & Format(Now, "yyyy-mmdd-hhmm") は保存先のパス。
  5. 日時が必要なら & Format(Now, "yyyy-mmdd-hhmm") を加えます。
  6. 時刻が不要なら、-hhmm は削除します。


注意事項
  • パソコン環境は、OS:windows, 表計算ソフト:excel の場合です。その他使用環境の違いでマクロが動かない可能性がありましたらご容赦下さい。
  • エクセルファイルのマクロ有効化、開発タブの表示、マクロボタンの作成、マクロコードの貼り付け場所等については、下記を参考にして下さい。
  1. マクロ有効化
  2. 開発タブの表示
  3. マクロボタンの作成、マクロコードの貼り付け場所


アドバイス
  • コードを見ると、FSOって何?Objectって何?と多々疑問に思うでしょうが、初めは何も考えずただ真似して下さい。現場ねこではないですが、「詳しいことは分からないけど、ちゃんと動いてるからヨシ」として下さい。私も初めはそうでした。初めは人の真似から入り、慣れてきたら少しずつ詳しいことを調べていくでいいと思います。

コメント