• ベストアンサー

【VB6】EXCELセーブ:既に存在していたら自動で数字つけてセーブさせたい

お世話になっております。 VB6(visual basic 6)プログラムからEXCELのブックをパスを指定してセーブする際、既にその指定のパスのファイルが存在していた場合、に自動的に接尾辞をつけてセーブしたいです。 パスc:\aru_path.xlsでセーブしたいとき、もしすでにc:\aru_path.xlsが存在していた場合、 c:\aru_path_1.xlsとかc:\aru_path(1).xlsのように自動で末尾に数字がつくようにしたいです。 そのとき、 oApp.ActiveWorkbook.DisplayAlerts = False とか手段は何でも良いのですが、自動運転の途中での事なので、自動的に処理が進む意味で、メッセージが出て中断しないようにしたいです。 EXCEL:EXCEL 2000 OS: win XP 以下にターゲットの中核部分を切り出しました。 --- Dim oApp As Object Set oApp = CreateObject("Excel.Application") oApp.Workbooks.Add oApp.ActiveWorkbook.SaveAs "c:\aru_path.xls" '指定のパスで保存 --- ファイルが存在しているがどうかを調べるルーチンがわかればよいかと思い調べましたが分かりませんでした。 どうぞよろしくお願いいたします。

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

  • ベストアンサー
回答No.2

VBならばDir関数でファイルの存在は確認できますよ。 Dir("[ファイルのフルパス]") でファイルが存在すればファイル名が 存在しなければ空文字列が返ってきますので If Dir("[ファイルパス]") = VbNullString Then 'ファイルが存在しない場合の処理 Else 'ファイルが存在する場合の処理 End If で分岐できると思われます。

その他の回答 (1)

  • taka_tetsu
  • ベストアンサー率65% (1020/1553)
回答No.1

>ファイルが存在しているがどうかを調べるルーチンがわかればよいかと思い調べましたが分かりませんでした。 Dir関数

関連するQ&A

専門家に質問してみよう