|
▼Asaki さん:
>問題があるから、最後のやつを使ってくださいとお願いしています。
>A1に 1/31 と入力してtest1を実行したら、フォルダが3月分になるでしょう?
>2月分 にならなければいけませんよね?
確かに1/31と入力すると→「3月分」ホルダーになりました。一番最後のものを使わせせていただきます。
ただ、今日(12月26日)の処理をしますと
フォルダーは「1月分」で良いのですが、ファイル名が「明細表12ー26」で無いと
困るのですが、・・・このコードでは「明細表01−26」になります。
この件に関しましては、前回にも書かせていますが、最後のコードでは1月先の月日に
なるのですが・・・何処が問題なのでしょうか
(前回の質問の中で)
>>>12月21日には、「明細表17−01月分」のフォルダーに「明細表01-21」のファイルに仕上げたい
>>→これは、「明細表17−1月分」のフォルダーには
>>「明細表12-21」から「明細表01-20」までファイル(毎日作成するデータですが)が格納される事を意味しています。
>内容は分かっていますが、ご自分の記述内容が食い違っていることにお気づきでは有り
>ませんか?
>動作確認して、作成されるフォルダ名、ファイル名が本当に正しいかどうか(意図どお
>りか)再度チェックされることをお勧めします。
どのような意味なのか少し分かりにくいのですが、
1月分のフォルダーには・・・→「12月21日から1月20日」までのファイルが入る必要があります。最後にいただいたコードを動かすと「明細表17-01月分\明細票01-26」となります。
これでは無く「明細表17-01月分\明細票12-26」とならないとだめなんです。
最後に再度、今日の日にちがファイルに入る方法を教えていただきますよう、
お願い申し上げます。下のコードでよいでしょうか?
本当にご親切にありがとうございました、会社に行って直します。
ありがとうございます。
Sub test2()
Dim dt1 As Date
Dim dt2 As Date
dt1 = Cells(1, 1).Value
dt2 = dt1
If Day(dt1) > 20 Then
dt2 = DateSerial(Year(dt1), Month(dt1) + 1, Day(dt1))
dt2 = DateSerial(Year(dt2), Month(dt2) + CLng(Day(dt1) <> Day(dt2)), Day(dt2))
End If
MsgBox "明細表" & Format(dt2, "e-m") & "月分\明細表" & _
Format(Date, "mm-dd") & ".xls"
' Format(dt2, "mm") & "-" & Format(dt1, "dd")・・・これを上のコードと入 れ替えました
End Sub
|
|