ExcelVBA一つ上までのフォルダ作成
ExcelVBA2007以上で質問です。
現在のファイルのあるフォルダは例えば「11月分」という名前になっています。
もうひとつ上は「2014年」というフォルダになっています。
コードを実行すると、翌月のフォルダとファイルを作成するようになっています。
現在11月なので、実行すると「12月分」というフォルダを作成して、「AAA2014-12」というファイルを作成します。さらにこれを実行して、例えば
"D:\YM\Desktop\AAA\2015年\1月分"\AAA2015-1.xlsm
のように2015年のフォルダを作成してさらにその中に1月分のフォルダを作成したいのですが、2014年フォルダの中に1月分フォルダが作成されるだけで、どうすればいいのか分かりません。
今の所、月のフォルダと、ファイル名は翌月取得が下記のコードで実現できています。
最後のコードに手を加える必要があると思いますが、どうすればよいでしょうか?
Sub AAA翌月ファイル作成()
Dim myDir_path As String, myNew_path As String
'現在ファイルがあるフォルダパスを取得
myDir_path = Left(ThisWorkbook.FullName, InStrRev(ThisWorkbook.FullName, "\") - 1)
'翌月分のファイル名を取得
myNew_path = "在庫数" & Format(DateAdd("m", 1, Replace(Replace(ThisWorkbook.Name, "AAA", ""), ".xlsm", "")), "yyyy-m") & ".xlsm"
'翌月のファイルを保存するフォルダ名を取得 あとは、年が変わったら1年繰り上げたものを取得したい
myDir_path = Left(myDir_path, InStrRev(myDir_path, "\")) & Format(DateAdd("m", 1, Replace(Replace(ThisWorkbook.Name, "AAA", ""), ".xlsm", "")), "m") & "月分\"
補足
その場所が「既存」なのか「存在しない」かで、プログラムを変更しないといけません。の所で、プログラムを変更すると、「既存」の場合と、「存在しない」場合とではプログラムはどのように変わるのでしょうか?教えて頂けると幸いです。