DLOOKUPで見つからないときは、入力処理を行う

こんにちは。伊川(@naonaoke)です。

DLOOKUP関数で値がみつからないときに、テーブルにデータを入力するのは面倒ですね。

そんな時に、入力するテーブルが自動で表示されたら便利ですよね。

自動でテーブルを起動する技を紹介します。

また、同じような記事を紹介していますので、ぜひ合わせて読んでみてください。


問題提起

 

(株)IKAWAの阿久 世子男(アク セスオ)は上司から下記の依頼を受けました。

DLOOKUP関数で何も表示されないときに、簡単に処理できるようにしてほしい。

どのような方法があるだろうか?

解決策

 

回答
sesuo2.jpg
・DAO Recordset Nomatch Seekを使って検索する。
・値追加の処理方法記載する。

レコード追加手順

今回は、すこし、組み合わせるパーツが多いので、難しいかもしれません。

ただし、今回の内容は、テーブル全部を検索します。

あまりにも、データが多いと、処理が遅くなるので、注意しましょう。

レコード追加手順 作成手順その1 データベース確認


上の図のようなテーブルがあります。


社員IDを入力したときに、なにも表示されない場合の処理方法を記載します。

社員IDの更新後処理にコードを記載します。

レコード追加手順 作成手順その2 コードを仕込む



レコード追加手順 作成手順その3 コードを実行する





デーブルが開きました。

ここで、A006の社員を追加登録します。

追加処理をしない場合は、割愛します。

今回のコードの内容

トランザクションや、DAOなど、難しい内容が多いです。

トランザクションとは、取引の意味です。

イメージ的には、今回の場合においては、社員IDを探す場所を確保するというような意味です。

そして、社員IDを探す、見つける、見つけないというのが、トランザクション(取引)の一環なのです。

ここがポイント

 

ここがポイント
Function8.png
難しい内容は、その英語の意味から、想像します。今回のトランザクションなどは、取引という意味でした。そのトランザクションで、ACCESSがどのような動きをしてるのかを想像すると理解が早まります。

 

スポンサーリンク

まとめ

今回のまとめ
sesuo6.jpg
難しい内容でも、自分なり理解を深めている阿久 世子男(アク セスオ)です。特に、DAO等このようなことを理解していくとACCESSは本当に面白くなります。

今回のサンプルファイルは、No71です。

サンプルファイル
VBAを勉強中の悩みを解決
  • なんで動かないの?
  • もうやだ!
  • どこにも情報がない!
スポンサーリンク

Twitterでフォローしよう

おすすめの記事