変数を使って変幻自在の抽出

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

今回は、質問の内容を紹介します。

私のサイトに質問が来ました。

しかし、コメントを消してしまったので、記憶の範囲で紹介します。


スポンサーリンク



問題提起


健康診断のデータベースがあります。

質問者様の要望
今年、去年、一昨年のデータを抽出したい。
もし、年度が、2018の場合は、2018年、2017年のデータを抽出したい。

このような内容だったと思います。

紹介したのが、2019年なので、動画の年度と、ブログの年度がずれているのでご了承ください。

尿酸値とプライドは高いままって、健康には気をつけましょう。



変数

この場合は、変数を使います。

変数とは、変幻自在の値となります。

中学校の数学でいうと、文字に値を代入するという事になります。




変数を使って抽出 作業手順 その1 抽出フォームを確認

上の図のようなフォームを作成しました。






変数を使って抽出  作業手順 その2 レコードの検索ボタンの仕掛け Part 1

もし、日時が、空白なら、本日に日付を入力する。





変数を使って抽出  作業手順 その3 変数を設定

aは、Date型の変数として宣言します。

そして、aは、非連結型の日時を指定します。

iは 数値型の変数である、Longを宣言します。

その宣言したiは、2020/4/22であると仮定します。


変数を使って抽出  作業手順 その4 2020が、本当に数字か確認します。

MsgBoxの重要性に関しては、上の記事で説明しています。

本当に、2020と表示されるのかをMsgBoxで検証します。



2020と表示されました。

もし、2020が数字であるならは、変数i に、1を加算すると、2021になるはずです。

VBAは、この検証を繰り返すのが重要なのです。



これで、検証は完了しました。




変数を使って抽出  作業手順 その5 検索コードを仕込む


少し長いですが、上のコードを記載します。

 

オマケ


オマケですが、レコードの検索ボタンをクリックした瞬間に、日時がクリアになります。


選択したレコードを解除するコードです。




ここがポイント

ここがポイント
Function8.png
今回紹介した内容は、変数の基礎になります。VBAのコードに関しては、わかりやすい変数を設定することで、コードが可読しやすくなります。

可読しやすいという事は、メンテナンスが楽になります。

 




まとめ

動画の中では、クエリも説明していますが、変数を使っていないので割愛します。

最初は、上手く動かないこともありますが、自身で検証を繰り返してスキルアップしましょう。

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

サンプルファイルの購入
ブログが動画で紹介した内容のサンプルファイルを
購入できます。月額3,000円です。
練習用ファイルもダウンロードできます。
PayPal経由でお支払いでます。
ダウンロード回数に制限はありません。
スポンサーリンク

Twitterでフォローしよう

おすすめの記事