Accessには同じことをしようとするのに複数の手段があります。


フォームの作成に関して、メニューから作成するものとVBEから作成するものがある。


  ※これについて最近調べると、Access2000以降ではないようです。97時代の記憶だったかもしれません。


・データベースへの操作に関して、クエリ、VBAのコードから可能である。


・処理はマクロでもVBAでも書ける。(書けるレベルは違いますけれど)


等です。




これ、適当に混在させるとものすごくわけわらんコードになってしまいます。




可能な限り揃えましょう。VBAベースで開発するのであれば


VBEからのフォームを使う。


  ※これについて最近調べると、Access2000以降ではないようです。97時代の記憶だったかもしれません。


・DB操作はVBAから、それもDAOやADO経由でSQLを使って操作する。


・処理はVBAで書く。


を推奨します。




なぜか、というと「VBAに記載しておけば検索ができる」ので、後々調べるのがうんとラクになるのです。


また、間違って削除クエリなんて押してしまった日にゃあ、っていう事故も防げます。




市販本では「あるものは全部解説」の傾向にあります。素人がシステムを作るには敷居は低くなっており、そういうニーズには応えて伊入るとは思うのですが、業務として使うのであれば、保守性の面から使わない方がいい機能もあります。上記はその代表例かと存じます。