• ベストアンサー
  • 暇なときにでも

Accessのフォーム上で指定ファイルの削除について

  • 質問No.605337
  • 閲覧数1937
  • ありがとう数0
  • 回答数2

お礼率 33% (6/18)

Access2000を使用しています。
まず、現状を説明します。
1.メールで送られてきた3つExcelを特定のフォルダに
  保存します(手作業)
2.このExcelファイルをフォーム上でマクロを使用して
  インポートします
3.インポート後、Excelファイルを削除します(手作業)

ここで質問です。
[3.]のExcelファイルを[2.]のインポート後、自動で
削除することが出来ませんか?
削除が出来ないのならExcelファイルが保存されている
フォルダをインポート後、自動で開くことが出来ないで
しょうか?教えてください。
勝手な事を申しますが、できればファイル削除方法と
フォルダを開く方法の両方のやり方を教えてくだされば
うれしいです。以上よろしくお願いいたします。

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

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

ベストアンサー率 42% (1231/2878)

ファイルを削除するには、VBAコマンドkillが使えます。

ex) Kill "c:\winnt\notepad.exe"

フォルダを開くには、VBAコマンドShellを使って、Explorerを起動するコマンドを実行するのが、てっとりばやいでしょう。

ex) Shell "explorer c:\", vbNormalFocus

その他の回答 (全1件)

  • 回答No.2

ベストアンサー率 47% (77/163)

こんにちは。

#1さんの言われている通り"Kill"関数を使えばファイル削除は可能です。
一応、VBAとしてこんな感じのものを作ってください。
後は、どこでも良いので、この関数を呼び出せばOKです。
ex) X = File_Delete("C:\TEMP\AAAA.XLS")

--------------------------------------------------------------------------
Public Function File_Delete(File_Name As String)
'*******************************************************
'* ファイル削除
' 引数:ファイル名(完全パス付き)
' 返値:0->正常 1->異常
'
'変数定義
Dim ERROR_FLG As Integer '削除時のエラー判定
'
' 初期値設定
ERROR_FLG = 0
'
' ここからエラートラップします。
On Error GoTo ERROR_RTN:
'
' ファイルを削除します。
Kill File_Name
'
' エラートラップの解除
On Error GoTo 0
'
' 戻り値設定
File_Delete = ERROR_FLG
'
Exit Function
'
' エラートラップ
ERROR_RTN:
'
MsgBox "予期しないエラーが発生しました。詳細は以下の通りです。" & _
Chr(13) & Chr(10) & _
Err.Description & Chr(13) & Chr(10) & _
"ファイル削除に失敗しました。", 16, "ファイル削除エラー"
ERROR_FLG = 1
Resume Next
'
End Function
--------------------------------------------------------------------------

注意:Kill関数は非常に危険な関数ですので、使用される時には、十分にご注意下さいね。

ではでは・・・
関連するQ&A

その他の関連するQ&Aをキーワードで探す

ピックアップ

ページ先頭へ