プロが教える店舗&オフィスのセキュリティ対策術

まず、私はマクロ初心者です。なにぶん複雑でVBAのマニュアルには載っていなかったり、マニュアルにあったとしても、私自身初心者のため応用がきかず、こちらに投稿させていただきました。

目的は在庫データの集計で、集計するためのフォーマット(ファイルA)があり、ファイルAから、とあるシステムから抽出する月度別の在庫データ(ファイルB)を、月度別のフォルダから自由にファイルを指定するVBAを作ることは可能でしょうか。

ただ、そのファイルBが少々曲者で、下記の条件があります。

*<ファイルBの条件>*********************
1.とあるシステムから抽出するデータ(ファイルB)は、自動でエクセルに変換されCドライブに保存さますが、ファイル名が、基本ファイル名、たとえば「物流在庫」の後ろに抽出年月日と時刻が「-200912021354」という風に数字で表記されてしまうため、毎月変わります。
2.Cドライブにいったん保存されたファイルBを、会社の共有パソコンへ移動させるのですが、(部門名)フォルダ→年度別フォルダ→月度別フォルダ→在庫データフォルダと複数のフォルダを経由して、最終的に在庫データフォルダの中へ移動させています。
********************************

担当者が変わっても誰でもこの業務ができるようにしたいので、ファイルBの名前を変える(抽出年月日+時刻部分を削除する)という作業は避けたいと思っています。

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

A 回答 (1件)

結局「フォルダ名、ファイル名」をどう作るかという問題じゃないかと。



フォルダ名は、「処理する月」がVBA起動時に決まっている筈ですから
その変数から持ってくればオッケー。例えばダミーのシートを1枚
作って「=NOW()」で起動日を引っ張り、当月、前月の文字列を作って
RANGE()でVBAに持ち込む、なんてのはよくやります。

(VBA内でnow関数を使っても良いんですが、その場合、何らかの理由で
 前倒し、後処理があると使えなくなるという問題があります)

問題はファイル名ですが、確かOpenの処理をするとき「DATA*.XLS」と
言う形で読み込めたような気が・・・。これが出来れば「物流在庫200912*.XLS」
で読み込めますよね。
    • good
    • 1

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

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A