Excel VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


11057 / 13646 ツリー ←次へ | 前へ→

【18354】VBAで名前を付けて保存 いるか 04/9/21(火) 20:50 質問[未読]
【18355】Re:VBAで名前を付けて保存 IROC 04/9/21(火) 20:55 回答[未読]
【18356】Re:VBAで名前を付けて保存 ちゃっぴ 04/9/21(火) 20:57 回答[未読]
【18363】VBAで名前を付けて保存 いるか 04/9/22(水) 9:32 質問[未読]
【18367】Re:VBAで名前を付けて保存 IROC 04/9/22(水) 10:31 回答[未読]
【18381】Re:VBAで名前を付けて保存 いるか 04/9/22(水) 14:31 質問[未読]
【18382】Re:VBAで名前を付けて保存 IROC 04/9/22(水) 14:34 回答[未読]
【18395】Re:VBAで名前を付けて保存 いるか 04/9/22(水) 16:29 お礼[未読]
【18397】Re:VBAで名前を付けて保存 IROC 04/9/22(水) 16:33 回答[未読]
【18401】Re:VBAで名前を付けて保存 いるか 04/9/22(水) 16:59 質問[未読]
【18405】Re:VBAで名前を付けて保存 IROC 04/9/22(水) 18:46 回答[未読]
【18410】Re:VBAで名前を付けて保存 いるか 04/9/22(水) 19:53 質問[未読]
【18411】Re:VBAで名前を付けて保存 IROC 04/9/22(水) 20:16 回答[未読]
【18421】Re:VBAで名前を付けて保存 いるか 04/9/23(木) 11:51 お礼[未読]

【18354】VBAで名前を付けて保存
質問  いるか  - 04/9/21(火) 20:50 -

引用なし
パスワード
   エクセルVBAで名前を付けて保存は、SaveAsを使って・・・というのは、解っているのですが、これだと指定した名前しか、保存できないですよね;;
とあるセルに入っている数字を利用して保存の名前にし、保存先を指定したいのですが、どなたかわかる方宜しくお願いいたします。

【18355】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/21(火) 20:55 -

引用なし
パスワード
   >保存先を指定したいのですが
どのようにですか?


Saveas "c:\test\" & worksheets("Sheet1").range("A1").Value & ".xls"

でセルを参照出来ます。

【18356】Re:VBAで名前を付けて保存
回答  ちゃっぴ  - 04/9/21(火) 20:57 -

引用なし
パスワード
   >エクセルVBAで名前を付けて保存は、SaveAsを使って・・・というのは、解っているのですが、これだと指定した名前しか、保存できないですよね;;
>とあるセルに入っている数字を利用して保存の名前にし、保存先を指定したいのですが、どなたかわかる方宜しくお願いいたします。

変数を使えばいいだけです。

変数の使い方勉強してください。

例)

Dim A As String
Dim B As String

A = Range("A1").Value
B = ThisWorkbook.Path
ThisWorkbook.SaveAs = B & "\" & A & ".xls"

【18363】VBAで名前を付けて保存
質問  いるか  - 04/9/22(水) 9:32 -

引用なし
パスワード
   IROC様、ありがとうございます。
ちゃっぴ様、変数ですね、ありがとうございます ¢(.. )メモメモ。

最近VBAを使い始めたばかりで、右も左も・・・です。

今は、こんな感じです。
Dim fName
 fName = Application.GetSaveAsFilename( _
      fileFilter:="Excel(*.xls), *.xls")
 If fName <> False Then
   MsgBox "保存するファイル :" & Filename
  
これにセルの文字列を保存する名前にし、特定のフォルダに保存をしたかったのです。(これだと全然だめですね、お恥ずかしい)

自動記録をしながらいろいろとやっていたのですが、頭が爆発してしまって((^_^;)

【18367】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/22(水) 10:31 -

引用なし
パスワード
   GetSaveAsFilename を使うのですか?

ファイル名はセルから取得して、
フォルダは、ダイアログから選択させたいのでしょうか?


Dim Obj As Object
Dim myDir As String

  Set Obj = CreateObject("Shell.Application"). _
  BrowseForFolder(0, "フォルダを選択してください", 0)

  If Obj Is Nothing Then Exit Sub
 
  myDir = Obj.Items.Item.Path

  ・・・.Saveas myDir & "\" & Worksheets("Sheet1").Range("A1").value & ".xls"

【18381】Re:VBAで名前を付けて保存
質問  いるか  - 04/9/22(水) 14:31 -

引用なし
パスワード
   IROC様、ありがとうございます。

ネットや自動記録でいろいろ試しながらしていたら、GetSaveAsFilenameに辿り着いたのです。(急ぎのために勉強をろくにせずにやっているもので・・・)

いろいろと試行錯誤しながらしているのですが、Bookを新規保存、上書き保存という形で保存をしていきたいのですが、上書き保存はどうにかできたのですが、新規保存がどうも思ったようにいかなくて。(ToT)

相変わらず頭が爆発しているもので、セルの文字列から保存する名前にし、新しいフォルダを作成してBookを保存しようかとも考えています。

爆発しているもので、自分が何をしたいのか分からなくなっています。
乱筆お許しください。

【18382】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/22(水) 14:34 -

引用なし
パスワード
   >いろいろと試行錯誤しながらしているのですが、Bookを新規保存、
>上書き保存という形で保存をしていきたいのですが、
>上書き保存はどうにかできたのですが、新規保存

別フォルダにバックアップでも保存したいのでしょうか?

SaveCopyAs メソッドは使えませんか?

【18395】Re:VBAで名前を付けて保存
お礼  いるか  - 04/9/22(水) 16:29 -

引用なし
パスワード
   >別フォルダにバックアップでも保存したいのでしょうか?

はい!その通りなのです。

SaveCopyAs???というレベルなんですよ(TOT)

少し勉強してきます。

【18397】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/22(水) 16:33 -

引用なし
パスワード
   保存先フォルダは固定ですか?
それともユーザーが選択?

【18401】Re:VBAで名前を付けて保存
質問  いるか  - 04/9/22(水) 16:59 -

引用なし
パスワード
   ▼IROC さん、本当にありがとうございます。

今、考えているのは「新しいフォルダを作成し保存」「コピーを保存」の2通りです。

ActiveWorkBook.SaveCopyAs filename="ActiveSheet.Range("A1")"

これで試したのですが、全く・・・・・。

【18405】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/22(水) 18:46 -

引用なし
パスワード
   >今、考えているのは「新しいフォルダを作成し保存」
mkdirステートメントで出来ます。


「コピーを保存」の2通りです。
SaveCopyAsメソッドで出来ます。


>ActiveWorkBook.SaveCopyAs filename="ActiveSheet.Range("A1")"
>これで試したのですが、全く・・・・・。

私の掲載したサンプルを、しっかり見て下さい。
value プロパティも抜けています。
文字列は "" で囲みますが、構文は囲んでは行けません。

【18410】Re:VBAで名前を付けて保存
質問  いるか  - 04/9/22(水) 19:53 -

引用なし
パスワード
   ▼IROC さん、失礼いたしました。
>私の掲載したサンプルを、しっかり見て下さい。
>value プロパティも抜けています。
>文字列は "" で囲みますが、構文は囲んでは行けません。

ActiveWorkBook.SaveCopyAs filename=ActiveSheet.Range("A1").value&".xls"

成功しましたが、保存先がマイドキュメントになっているんです。

【18411】Re:VBAで名前を付けて保存
回答  IROC  - 04/9/22(水) 20:16 -

引用なし
パスワード
   >ActiveWorkBook.SaveCopyAs filename=ActiveSheet.Range("A1").value&".xls"
>成功しましたが、保存先がマイドキュメントになっているんです。


以下のようにパスを指定してください。

ActiveWorkBook.SaveCopyAs _
filename= "c:\test\" & ActiveSheet.Range("A1").value & ".xls"

【18421】Re:VBAで名前を付けて保存
お礼  いるか  - 04/9/23(木) 11:51 -

引用なし
パスワード
   IROCさん、大変お世話になりました。

やっと、完成しました。まだまだ勉強不足ですが、これからもご教授お願いいたします。

11057 / 13646 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
2610219
(SS)C-BOARD v3.8 is Free