電子書籍の厳選無料作品が豊富!

excel VBA シート保存について教えてください

下記のようなプログラムを見つけたのですが

Sub Sample()
Dim myFile As String
Dim myName As String

ThisWorkbook.Worksheets(1).Copy
myName = ActiveWorkbook.Worksheets(1).Name
myFile = ThisWorkbook.Path & "\" & myName & ".xls"
Application.DisplayAlerts = False
ActiveWorkbook.SaveAs Filename:=myFile
Application.DisplayAlerts = True
ActiveWorkbook.Close
End sub
このプログラムだとデスクトップに保存されますが保存先をCドライブの保存フォルダという名前を付けたフォルダに保存するにはどうしたらいいでしょうか?
アドバイス願います

質問者からの補足コメント

  • 追加の質問なのですが
    ファイル名を特定のセルのワードをファイルとしてCドライブの保存フォルダに保存したい場合は下記のコードでいうと
    myFile = ThisWorkbook.Path & "\" & xSheet.Range("A1").Value & ".xls"をどのように変更すればよろしいでしょうか?

      補足日時:2017/07/05 13:52

A 回答 (4件)

myFile = ThisWorkbook.Path & "\" & myName & ".xls"





myFile = "C:\保存フォルダ\" & myName & ".xls"

に換えればOKかな。
    • good
    • 0
この回答へのお礼

ありがとう

助かりましたありがとうございました

お礼日時:2017/07/05 14:32

個人的な意見ですが、少しはヘルプなどで何をやっているかを調べたり考えたりした方が良いと思いますょ!


以下説明しておきますのでどこを変えればよいか考えてみてください。

Dim myFile As String
→「myFile」という「変数」を「文字列」と定義しています。(のちに保存するファイル名が入ります)
Dim myName As String
→「myName」という「変数」を「文字列」と定義しています。(のちに保存するファイル名を含むパス名が入ります)
ThisWorkbook.Worksheets(1).Copy
→「ThisWorkbook(このマクロが書かれているブック)」の「Worksheets(1)(一番左のシート)」を「Copy(コピー)」します
myName = ActiveWorkbook.Worksheets(1).Name
→「ActiveWorkbook(アクティブ(一番上)のブック)」の「Worksheets(1)(一番左のシート)」の「Name(名前)」を「myName」に代入します
myFile = ThisWorkbook.Path & "\" & myName & ".xls"
→「ThisWorkbook(このマクロが書かれているブック)」の「Path(ファイル名を含まないパス名)」+「\」+「myName」+「.xls」を「myFile」に代入します
Application.DisplayAlerts = False
→「Application(今回はエクセル)」の「DisplayAlerts(確認メッセージの表示)」を「False(行わない)」 (通常は表示されるので、いちいち「OK」ボタンをクリックするのを省く)
ActiveWorkbook.SaveAs Filename:=myFile
→「ActiveWorkbook(アクティブ(一番上)のブック)」を「SaveAs(次の設定で保存する)」、「Filename:=(ファイル名を含むフルパス名)」を「myFile」に代入されている物にします
Application.DisplayAlerts = True
→「Application(今回はエクセル)」の「DisplayAlerts(確認メッセージの表示)」を「False(行なう)」 (通常と違う動作のままでは、問題になるといけないので、通常状態に戻しておく)
ActiveWorkbook.Close
→「ActiveWorkbook(アクティブ(一番上)のブック)」を「Close(閉じる)」(今回は複製されたブックが閉じます)
    • good
    • 0

No.2 の追補



起動にデスクトップにアイコンを置きたいと思っているならば、ファイルを特定な場所に移動したうえでデスクトップにショートカットを置いた方が良いですょ!
保存フォルダーが変わるごとにマクロを変更するのはあまり良いとは思えませんので…
    • good
    • 0

誤解が有るようです「デスクトップに保存」ではなく「このマクロがあるブックと同じフォルダーに保存」です。


このマクロが有るファイルを移動させればどこにでも保存できるようになっています。
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!