• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:EXCEL VBA 新規ブック保存について)

EXCEL VBA 新規ブック保存について

このQ&Aのポイント
  • フォームで作成したデータから、請求書などの帳票をシートに作成し、新たなブックに保存する方法についてまとめました。
  • また、保存先の指定や二つのブックの行き来についても解説しています。
  • VBA初心者の方でも分かりやすいように、具体的なコードも記載しています。

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

  • ベストアンサー
  • watabe007
  • ベストアンサー率62% (476/760)
回答No.3

参考に Dim myPath As String, Filename As String myPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\管理システム\帳票" With Worksheets("請求書")   Filename = .Range("C7") & "_" & .Range("F11") & .Range("J11") & ".xls" End With Worksheets("請求書").Copy ActiveWorkbook.SaveAs Filename:=myPath & "\" & Filename

nachi_snap
質問者

お礼

回答頂きありがとうございます! 自分でパスをとれば良かったんですね!! 丁寧にご回答頂き本当に感謝しております。 先週末から、私事で恐縮なのですが 身内の見舞いに遠方に行っていた為 お礼を申し上げるのが遅くなってしまい 申し訳ありませんでした。 本当にありがとうございました!!!!

その他の回答 (2)

  • watabe007
  • ベストアンサー率62% (476/760)
回答No.2

> C:\Users\××××××\Desktop\管理システム\帳票 >システムを丸ごと違うPCに変えても、エラーが出ないようにするには 以下でPCが変わっても・・・\デスクトップ\\管理システム\帳票 のパスを取得できます。 Dim myPath As String myPath = CreateObject("WScript.Shell").SpecialFolders("Desktop") & "\管理システム\帳票" MsgBox myPath

  • cma3atgoo
  • ベストアンサー率35% (32/90)
回答No.1

個人的意見ですが・・・ ブックの保存先ですが、 まったく別のPCで使うことを考えるならば、 固定ではなくて毎回指定できるようにしたほうがよろしいかと思います 「GetSaveAsFilename」 をつかうと「名前をつけて保存」で出てくるようなダイアログを使うことができますし、 「ThisWorkbook.Path」 で開いたブックと同じフォルダが取得できます 毎回指定するのが面倒な場合は固定でもよいと思いますが、 その場合はできるだけわかりやすく、 階層が深くない(\がたくさんつかない)ところがよいと思います(c:\workなど) 具体的なコードをかけなくて申し訳ありませんが、ご参考まで

nachi_snap
質問者

お礼

私も階層はつけたくなかったので、その方法も参考にさせて頂きたいと思います! 早速の回答を頂きありがとうございます!! With Application.FileDialog(msoFileDialogSaveAs) .FilterIndex = 1 If.Show = -1 Then.Execute End With End Sub ↑ 名前をつけて保存ダイアログボックスを表示して保存 コード書いてみました