【Access㉓-2】お気に入りの銘柄のリストを作る(後編)

前編の記事はコチラ

目次

ウォッチリストの情報を最新に更新する(更新クエリ)

テキストボックスを配置する

まずはテキストボックスを一つ配置します。ここで日付を指定します。
ウォッチリストの情報を更新する際に、何日の情報を適用するか指定するためです。

プロパティシートで、規定値を[=Date()]としておけば、自動で当日の日付が表示されます。

更新クエリを作成する

クエリのデザインビューで、テーブルを二つ表示させます。銘柄コードで結合させます。
①の銘柄コードでクリックし、そのまま②の銘柄コードまでドラッグします。線でつながればとりあえずOKです

線の上で右クリックして、結合のプロパティを変更します

ウォッチリストテーブルの全レコードと、元の株価データテーブルの同じ結合フィールドのレコードだけを含めるように設定します。

ただの直線だったものが、矢印に変化します

クエリを更新クエリに変更します

  1. リボンの[クエリデザイン]をクリックします
  2. [更新]を選択します
  1. 左側のウォッチリストテーブルから、[現在日付]をダブルクリックし、クエリのフィールドに追加します。
  2. 左側のウォッチリストテーブルから、[現在値]をダブルクリックし、クエリのフィールドに追加します。
  3. 右クリックのビルドから、Format関数と、株価テーブルの[現在日付]を指定します。
  4. レコードの更新欄を右クリックし、ビルダーを開くか、直接入力します。上のサンプルでは株価データの[現在日付]のデータを適用するように設定しています。※ついでにFormat関数を使用し、日付型に変換しています。
  5. レコードの更新欄を右クリックし、ビルダーを開くか、直接入力します。上のサンプルでは株価データの[終値]のデータを適用するように設定しています。

コマンドボタンを配置する

ウォッチリストのメインフォームにコマンドボタンを設置します

  1. リボンの[フォームデザイン]から[コマンドボタン]を選択して、フォームの任意の場所をクリックします。
  2. ウィザードは無視して、[完了]で終わらせます。(後でVBAを記述します)

コマンドボタンの[プロパティシート]の[クリック時]を、[イベントプロシージャ]に変更します。

VBAを追加する

VBA

Private Sub コマンド10_Click()

DoCmd.SetWarnings False               'システムメッセージを表示しない
DoCmd.OpenQuery "(任意のクエリ名)"    '更新クエリを実行
DoCmd.Requery "(サブフォーム名)"      'サブフォームを再クエリ(再描画)

End Sub

実行テスト

更新クエリ実行前

更新クエリ実行後

メインフォームの基準日で設定した日付の株価が反映されました。保有数に応じて右側の損益も計算されています。(平均取得単価が\0ですので、正確ではありませんが)

当サイトについて

当サイトでは日々の株価データを無料で配布しています。株価分析はもちろんAccessのサンプルデータとしても最適ですので、是非ご活用ください。

  • URLをコピーしました!
目次