• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルにて、VBAで名前を付けて保存する場合)

エクセルで名前を付けて保存する方法

このQ&Aのポイント
  • VBAを使用してエクセルで名前を付けて保存する方法について質問です。
  • 特定のファイル名で保存ダイアログを表示するVBAの作成方法を教えてください。
  • 保存せずにダイアログを表示させる方法について教えてください。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

ファイル名入りのダイアログを出すなら Application.Dialogs(xlDialogSaveAs).Show ARG1:="C:\Users\(ユーザー名)\Desktop\新しいフォルダー\売上集計表保存" & Format(myD, "yyyy年m月") & ".xlsm", ARG2:=1 ところで http://okwave.jp/qa6791070.html これはどうなってしまったのですか? まったく同じことをきいているようですが。

rutohamuni
質問者

補足

前回の質問も含めて色々やっていたのですが、保存の部分だけうまくいかず、悩んだ末に再度できない部分だけ質問させて頂きました。 無事解決しました。ありがとうございました。

その他の回答 (3)

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.4

エクセル・ダイアロウグの応用です。エクセルで出てくるダイアロウグそのもので、使う側の人に違和感は無いでしょう。 Sub test01() x = Application.Dialogs(xlDialogSaveAs).Show(arg1:="C:\Documents and Settings\xxxx\デスクトップ\売上集計表保存.xls", arg2:=43) End Sub 上記は、保存先に、「デスクトップ」、「ファイル名」に「売上集計表保存.xls」が表示されて応答待ち(保存かキャンセルのボタンクリック待ち)になります。 arg2はファイル形式です。 ファイル指定方法は、色々在ります。上記でよければ、Google照会して、さらに疑問点があれば、調べてください。 上記では保存先に、「デスクトップ」、「ファイル名」に「売上集計表保存.xls」を当初表示してますが、すべてユーザーに任せる方法でもこれを使えます。 上記コードのXを調べることで、ダイアロウグウインドウに対し、ユーザーのキャンセル(閉じるボタンクリック)も察知できます。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.3

>やり方が悪いんでしょうか? はい。ちゃんとやればちゃんと表示されます。 としか,お答えのしようがありません。 具体的にどんなマクロで試しているのか,「失敗しているマクロ」をキチンとそのままコピーして情報提供してください。 そうすれば,ここがミスってますよとかこうしましょうといった「次の一手」のアドバイスも,すぐに皆さんから寄せられます。 #それで。 こちらもゴメンナサイ,回答したマクロに(追加ご質問でひっかかってるのとは別の箇所で)ミスがありました。 訂正: dim res as variant chdrive "C" chdir "C:\Users\(ユーザー名)\Desktop\新しいフォルダー" res = application.getsaveasfilename(initialfilename:="売上集計表保存" & format(myD, "yyyy年m月") & ".xlsm") if res = false then exit sub activeworkbook.saveas filename:=res, fileformat:=xlOpenXMLWorkbookMacroEnabled 失礼しました。

rutohamuni
質問者

補足

>具体的にどんなマクロで試しているのか,「失敗しているマクロ」をキチンと >そのままコピーして情報提供してください。 基本的には、『’ファイルの保存』以下をそのままコピペしただけなのですが・・・他の方の情報から解決しましたので大丈夫です。 ありがとうございました。

  • keithin
  • ベストアンサー率66% (5278/7941)
回答No.1

ファイルの保存から dim res as string chdrive "C" chdir "C:\Users\(ユーザー名)\Desktop\新しいフォルダー" res = application.getsaveasfilename(initialfilename:="売上集計表保存" & format(myD, "yyyy年m月") & ".xlsm") if res = "" then exit sub activeworkbook.saveas filename:=res

rutohamuni
質問者

補足

やり方が悪いんでしょうか? 名前を付けて保存の画面は出ますが、ファイル名欄に指定したファイル名が表示されません・・・