Microsoft Access Club >Access裏技Tips >このページ >次頁 < 前項 サイト内検索


メインフォームにアクセスカウンター設置する : Access裏技Tips



WEBサイトだけでなく、Accessファイルにもアクセスカウンターがある便利です。 ここでは、Date関数を用いた簡易なアクセスカウンターを作成する技を紹介します。

アクセスカウンター設置する

  1. アクセス状況を記録するテーブル(tbl_sample)を作成します。
  2. このテーブルは、トップページが開かれると、その時々の日時を記録していきます。
  3. メインフォームを作成しレコードソースにtbl_sampleテーブルを配置します。
  4. このフォームに、今日(txt今日)、今月(txt今月)、累計(txt累計)のカウンターを表示するテキストボックスを作成します。
  5. 更に、フォームを開くたびに日時をテーブルに引き渡すテキストボックス(txtOpen)を作成します。
  6. フォームの開く時イベント、レコード移動時イベントを利用してカウンターを表示します。

アクセス状況を記録するテーブルの作成

  1. アクセス状況を記録する日付/時刻型のテーブルフィールドを1個(Open)作成します。

メインフォームの作成

  1. tbl_sampleをレコードソースに持つメインフォームを作成します。
  2. 今日、今月、累計のカウンターを表示するテキストボックスをそれぞれ作成します。
  3. 日時を格納するテキストボックスを作成し、可視プロパティを"いいえ"に変更します。

今回のおすすめポイント

可視プロパティ

フォーム、またはフォーム上のオブジェクトの表示、非表示を設定するプロパティです。 非表示の場合でも、テーブルフィールドとデータの受け渡しが可能です。

フォームの開く時イベントプロシージャの作成

フォームの開く時イベントプロシージャを作成します。

Private Sub Form_Open(Cancel As Integer)

    DoCmd.GoToRecord acForm, "frm_sample", acNewRec ' --- A
    Me.txtOpen = Now() ' --- B

End Sub
解説
  1. GoToRecordメソッドを用いて、フォームが開いた時には新規レコードに移動します。
  2. Now関数を用いて、フォームが開いた日時を取得します。

レコード移動時イベントプロシージャの作成

レコード移動時イベントプロシージャを作成します。

Private Sub Form_Current()

    Me.txt本日 = DCount("[Open]", "tbl_sample", "[Open]=Date()") +1 ' --- A
    Me.txt今月 = DCount("[Open]", "tbl_sample", _
"[Open]<=Date() AND [Open]>=DateSerial(Year(Date()),Month(Date()),1)") +1 '--- B
    Me.txt累計 = DCount("[Open]", "tbl_sample") +1 ' --- C

End Sub
解説
  1. DCount関数を用いて、本日の日付データを持つレコード数を求め、txt本日テキストボックスに渡します。
  2. DCount関数を用いて、tbl_sampleテーブルのOpenフィールドの中で、月初から本日までの日付データを持つレコード数を求め、txt今月テキストボックスに渡します。
  3. DCount関数を用いて、全てのレコード数を求め、txt累計テキストボックスに渡します。
今回のおすすめポイント

+1

メインフォームが開かれると、開いた日時を記録していきます。
アクセスカウンターはテーブルフィールドに記録されているレコード数が元になっています。 しかし、開かれた時にはその時のカウント数が反映していませんので、カウント数を +1 しています。

動作確認

  1. デザインビューからフォームビューに切り替えます。
  2. 全てのカウントが 1 になっているのを確認します。

  1. パソコンの日付/日時のプロパティを開け、設定を翌月に変更し更に日付を一日進めます。
  2. 今日、今月、累計のカウンターが変換するのを確認します。

関連ページ

ページの先頭へ 前ページへ戻る

 


メインフォームにアクセスカウンター設置する : Access裏技Tips


 

-Microsoft Access Club-

cPanel あるいは PLESKコントロールパネルをインストールした専用レンタルサーバのディスカウントプランを期間限定で公開しています。
cPanel・PLESKコントロールパネルを備えた専用レンタルサーバ....。