Microsoft Access 掲示板

ユーザログ保管のVBAを、PWD付バックエンドDBに保管させたい / 3

9 コメント
views
4 フォロー
3
ゲッキョク駐車場 2021/04/07 (水) 14:20:03 cb55f@f6500

hiroton さん
お早いご返事誠に痛み入ります。
実際に置換してみたところ、うまくいきました・・・!
ありがとうございます!
VBAでSQL文を書いてると、ゴチャついてきちゃいますね。
追加で代入していく方法も今後用いて、着実にミスの無いようにしていきたいです。

また、早速参考にして、UserLogの古い履歴をイイカンジに消す CleanLog にも頑張って適用してみました。下記。

Public Sub CleanLog(Day As Integer)
'上記で登録したユーザーAccessデータを、いい感じの古さの物から削除

  Dim RemoveDate As Date: RemoveDate = DateAdd("d", -Day, Now)
  '今の日にちから、●●日前 を特定する関数
    
  RemoveDate = Format(RemoveDate, "yyyy/mm/dd hh:mm")
  '特定した日付を、xxxx/xx/xx xx:xx の形に整える

  Dim DB As DAO.Database: Set DB = CurrentDb
  Dim strSQL As String
  
  strSQL = strSQL & "delete from T_UserLog "
  strSQL = strSQL & "IN '' [MS Access; PWD=PASSWORD; DATABASE=C:\略\MnfctMng_BEDB.accdb;] "
  strSQL = strSQL & "where 日時<#" & RemoveDate & "#"

  DB.Execute strSQL
  '上記の日時からのデータをすべて削除する

End sub

これによって、BEDBの方の古いログも消すことができましたが、これで問題ないでしょうか…。
ログなので別にミスって全消去になってもそこまで問題はないのですが、DELETEを扱うので
すこし心配になってしまって。
ご教示の程宜しくお願い致します。

通報 ...