|
▼かみちゃん さん:
>こんにちは。かみちゃん です。
>
>> ファイル名「集計表」(シートは一つだけではありません。)を、3月分として 保存し(保存する際は、ファイル名を「集計表:3月分」とします。)、更に、 その「集計表」に入力されているデータをクリアにしたものを、改めて
>> 上書き保存する。
>
>マクロの自動記録でどのようにうまくいかなかったのか、わかりませんが、マクロの自動記録である程度作って微修正すれば、できます。
>とりあえず、こんな感じでどうですか?
>
>Option Explicit
>
>Sub Macro1()
> Dim Org_BookName As String
> Dim Target_BookName As String
>
> '現在開いているブック(元のブック(集計表))のフルパスを取得
> Org_BookName = ThisWorkbook.FullName
>
> '上書き確認メッセージを表示しない
> '上書き確認メッセージを表示する場合は、FalseをTrueにする。
> Application.DisplayAlerts = False
>
> '別のブック名(「集計表:○月分」)で保存
> Target_BookName = "集計表:3月分"
> '--- マクロの自動記録で作成、微調整
> ActiveWorkbook.SaveAs Filename:= _
> Target_BookName, FileFormat:=xlNormal, _
> Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
> CreateBackup:=False
> 'Sheet1の全てのセルの値をクリア
> Sheets(1).Cells.ClearContents
>
> '元のブック名で保存(フルパス)
> ActiveWorkbook.SaveAs Filename:= _
> Org_BookName, FileFormat:=xlNormal, _
> Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
> CreateBackup:=False
> '--- 自動記録おわり
>
> '上書き確認メッセージを既定値に戻す
> Application.DisplayAlerts = True
>
> 'マクロ終了メッセージ
> MsgBox "処理を終了しました。"
>End Sub
ASAKIさん、かみちゃんさん、ありがとうございます。
かみちゃんさんの内容についてですが、今回の質問内容は、「集計表:3月分」ということでしたが、毎月、保存するわけなので、例えば、INPUTBOXやユーザーフォームなどを使って、月を登録し、最終的にファイル名が「集計表:4月分」や「集計表:12月分」といった形にできるものでしょうか?
|
|