VBAの組み込みダイアログの引数Argについて
エクセルVBAでの質問です。
エクセルとして名前をつけて保存なら
Sub aaa()
Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.xls", ARG2:=1
End Sub
テキストファイルとして名前をつけて保存なら
Sub bbb()
Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.txt", ARG2:=3
End Sub
CSVファイルとして名前をつけて保存なら
Sub ccc()
Application.Dialogs(xlDialogSaveAs).Show ARG1:="ABC.csv", ARG2:=6
End Sub
でうまくいきます。
今度は、ファイルを開こうとxlDialogOpenに変えました。
Sub aaa2()
Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.xls" ', ARG2:=1
End Sub
Sub bbb2()
Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.txt", ARG2:=3
End Sub
以上二つはファイル名入りのダイアログは出ました。でもダイアログの画面にはフォルダーしか表示されません。
Sub ccc2()
Application.Dialogs(xlDialogOpen).Show ARG1:="ABC.csv", ARG2:=6
End Sub
これは実行時エラーになりました。
どうも、Application.Dialogs(xlDialogSaveAs)とApplication.Dialogs(xlDialogOpen)では引数ARG2が違うようです。
Application.Dialogs(xlDialogOpen)でのARG2は何の指定なのでしょうか?またその数値の意味はなんでしょうか?
お礼
突然の出張が入りさきほど帰ってまいりました。 お礼が遅くなり申し訳ありませんでした。 なぜか、 Arg1:=Range("C5").Valueの部分を削除しましたら問題が解決しました。 ありがとうございました。
補足
早速の回答ありがとうございます。 Windows("シート名.xlsm").Activate Application.Dialogs(xlDialogSaveAs).Show Arg1:=Range("C5").Value ActiveWorkbook.Close SaveChanges:=True に変えて実行したのですが二度開かれます。