2016-10-18 9 views
0

次の木曜日の日付に応じて別のFileNameでパワーポイントファイルを保存しようとしています。つまり、ファイル名を18.10.2016(火曜日に対応)に保存すると、ファイル名は20/10/2016(次の木曜日に対応)になります。パワーポイントを保存するVBAマクロファイル名が異なるファイル

私が書いたものだが、それは偽のようだ:あなたの助けを

Sub SaveAll() 
    Dim prs As Presentation 
    Dim Todate As Date 
    On Error Resume Next 
    For Each prs In Presentations 
    Todate = DateValue(Now) 
    oldWeekDay = Weekday(Todate) 
    Select Case oldWeekDay 

    Case 1 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 4.pptm" 
    Case 2 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 3.pptm" 
    Case 3 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 2.pptm" 
    Case 4 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 1.pptm" 
    Case 5 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate.pptm" 
    Case 6 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 6.pptm" 
    Case 7 
    prs.saveAs "C:\Users\Moez\Desktop\Macro_Project\Todate + 5.pptm" 

    End Select 

    Next prs 

End Sub 

おかげ

+1

ですか? – arcadeprecinct

+1

最初に、 "20/10/2016"は有効なファイル名ではありません(少なくともWindowsでは)。 /をファイル名に使用することはできません。次に、名前に静的な文字列を使用していますが、連結( '&')と日付 - 文字列変換(通常は 'Format'関数で行われます)を使用してファイル名を"ビルド "する必要があります。 –

+2

そして、最後に、 'Presentation'のすべての' prs'を同じ名前で保存していれば、それらはお互いを上書きします。 –

答えて

1

が日付使用DateAddに日数を追加します。あなたはunsing (7 + numberOfDayYouWant - numberOfDayYouHave) Mod 7

Dim nextThursday As Date 
Dim strDate As String 
Dim Todate As Date 
Todate = Date 'the "Date" function returns the date portion of "Now" 

'find the next thursday 
nextThursday = DateAdd("d", (12 - Weekday(Todate)) Mod 7, Todate) 

'make a string 
strDate = Format(nextThursday, "yyyy-mm-dd") 'edit format as you wish 

'now save the presentation, e.g. 
'Set prs = someting 
prs.SaveAs "C:\Users\Moez\Desktop\Macro_Project\" & strDate & ".pptm" 

を追加する日数を計算することができますそれは偽思われるもの「偽のようだ」と同じ名前で、あなたのプレゼンテーションを保存していないことを確認するためにあなた次第

+0

'Todate = DateValue(今)'を 'Todate = Date()'に置き換えることができます –

+0

True、それはOPだったので残しました。私は関数と型の間で混乱させたくありませんでした – arcadeprecinct

関連する問題