- ベストアンサー
ワークブックに名前をつけて保存するマクロ
教えてください!! ワークブックで名前をつけて保存するときのマクロなんですが、 自動記録すると下記のように記述されています。 ActiveWorkbook.SaveAs Filename:="C:\○○○\○○○\□□□□□.xls" この□□□□□の部分はインプットボックスを表示させたいのですが、 こういうマクロを組むことはできますか?
- みんなの回答 (5)
- 専門家の回答
質問者が選んだベストアンサー
こんにちは。 >コンパイルエラー:修正候補:ステートメントの最後 >とエラーになってしまいます。 そのエラーは、Sub ○○○() ときちんと書かれていないからです。ファイル名が入っていないエラーではありません。 私も二種類の型で書いてみました。 Test1 は、まだ、エラー処理が足りません。 '------------------------------- Sub Test1() 'InputBox を使った方法 Dim Fname As String Dim fn As String '規定のパスを書いておく Const MYPATH As String = "C:\○○○\○○○\" Fname = InputBox("ファイル名") If Fname = "" Then Exit Sub fn = MYPATH & Fname & ".xls" If Len(Dir(fn)) = 0 Then ActiveWorkbook.SaveAs Filename:=fn Else MsgBox Fname & " :すでに同じファイルがあります。", 48 End If End Sub '------------------------------- Sub Test2() 'ダイアログを使った方法 Dim Fname As String Dim fn As String '規定のパスを書いておく Const MYPATH As String = "C:\○○○\○○○\" Fname = Application.InputBox("ファイル名", Type:=2) If Fname = "" Or StrComp(Fname, "FALSE", 1) = 0 Then Exit Sub fn = MYPATH & Fname & ".xls" With Application.Dialogs(xlDialogSaveAs) .Show fn, 1 End With End Sub
その他の回答 (4)
- deepbluetk
- ベストアンサー率28% (2/7)
たとえば、 '変数の定義 Dim fname$ 'ファイル名入力 fname$ = InputBox("ファイル名を入力してください", "○○○に保存", "") 'キャンセルまたは何も入力しなかったした場合、処理を中断 If fnname$ = "" Then Exit Sub Else End If 'ファイルを保存 ActiveWorkbook.SaveAs Filename:="C:\○○○\" & fname$ という感じでどうでしょう。 同名のファイル名を入力したとき上書き確認が出ますが、そこでいいえにした場合、エラーになります・・・中途半端ですいません。
お礼
ありがとうございます。 やってみました。 インプットボックスにファイル名を入力しますが、保存されないようです。
- merlionXX
- ベストアンサー率48% (1930/4007)
#1です。 では、 FN = InputBox("ファイル名を入力してください。", "名前をつけて保存") If FN = "" Then Exit Sub ActiveWorkbook.SaveAs Filename:="C:\○○○\○○○\" & FN & ".xls"
お礼
ありがとうございます。 でも、やっぱり同じエラーが出てしまいます・・・。
- hallo-2007
- ベストアンサー率41% (888/2115)
test = InputBox("ファイル名") ActiveWorkbook.SaveAs Filename:="C:\○○○\○○○\"&test&".xls" では?
お礼
いけそう!!と思ってやってみましたが、 コンパイルエラー:修正候補:ステートメントの最後 とエラーになってしまいます。
- merlionXX
- ベストアンサー率48% (1930/4007)
組み込みダイアログをつかったらいかがでしょう? Application.Dialogs(xlDialogSaveAs).Show これで、保存先もファイル名もユーザーが自由に設定できます。
お礼
ありがとうございます!! 保存場所が決まってる場合で、ブックの名前をつけるとこまでいけたら最高なんですが・・・。
お礼
ありがとうございます!!! 完璧です。本当に助かります。すっきりしました(喜) 1番目もいいけど、2番目はブック名を引用したいときなんかはすごくいいなと思いました!ありがとうございました!!