dポイントプレゼントキャンペーン実施中!

いつも大変お世話になりありがとうございます。
早速ですが、教えてください。

以下のマクロでファイル名を指定して保存させようと思うのですが、デフォルトで表示するフォルダーをたとえば、Cドライブの「AAAAA」という指定はできますでしょうか?
また、そのパソコンに「AAAAA」というフォルダーが無かったら、作るようにしたいのですがどう記述すればよいのでしょうか?


Sub test()
Dim aaa As String
aaa = Format(Now, "MMDDHHmm")
FName = Application.GetSaveAsFilename(InitialFilename:=aaa & ".csv", FileFilter:="CSVファイル(*.csv), *.csv")

'以下略

End Sub

A 回答 (3件)

エラーナンバーで判断してフォルダ追加する方法はいかがでしょう。




Sub test()
Dim aaa As String
Dim ddd As String
On Error Resume Next
bbb = "C:\AAAAA"
ChDir bbb
If Err.Number = 76 Then
 response = MsgBox( _
  "フォルダ" & bbb & "は存在しません。作成しますか?", _
  vbYesNo + vbQuestion, _
  "フォルダの追加" _
  )
 If response = vbYes Then
  MkDir bbb
  ChDir bbb
 End If
End If
aaa = Format(Now, "MMDDHHmm")
fname = Application.GetSaveAsFilename(InitialFilename:=aaa & ".csv", _
  FileFilter:="CSVファイル(*.csv), *.csv")
End Sub
    • good
    • 0
この回答へのお礼

最初の、Dim ddd As String は bbb ですね?

そこだけ直してやってみましたら思ったようにできました。
ありがとうございました。
たすかりました。

お礼日時:2003/08/28 09:18

> 最初の、Dim ddd As String は bbb ですね?



失礼、そのとおりです。
    • good
    • 0
この回答へのお礼

わざわざありがとうございました。
本当にたすかりました。

お礼日時:2003/09/01 12:24

大体こんな感じで。


Dドライブが存在する場合の処理は適当に追加してください。

Sub tmp()
Dim s$, path_org$, path_tgt$
path_org = CurDir
path_tgt = "C:\tmptmp\"

If (Dir(path_tgt, vbDirectory) = "") Then MkDir path_tgt
ChDir path_tgt
s = Application.GetSaveAsFilename
Debug.Print s
ChDir path_org
End Sub
    • good
    • 0
この回答へのお礼

ありがとうございました。

難しすぎてよくわかりませんでしたが、たしかにCドライブに「tmptmp」フォルダーが作成されました。

> Dドライブが存在する場合の処理は

とはどういう意味なのでしょうか?
わかりませんでした。

お礼日時:2003/08/28 09:16

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