第5回です。
MicrosoftのAccess2010で「パスワード管理データベース」を作成してみましょう。
本日は、パスワード管理データベースの作成です。
全くの初心者には、少々、キツイと思いますが、基本的な「Access 2010」の操作方法を習得されている方なら「できる」と思います。 なるべく、詳しく説明したいのですが、細かな操作方法までは記載できませんので、あしからず。
これくらいのレベルのデータベースさえ、苦労して作れなければ、何も事は進まないでしょう。この記事を参照して、格闘しながら自分で作れるかどうかは、あなた次第ですが。。。。
このアプリは、「Access 2000」時代に作成して、自分で今でも使用しているパスワード管理用のデーターベースアプリです。「Access 2000」から「Access 2010」に変換して使用しています。
—関連記事—
・第10回 Access2000(mdb)からAccess2010(accdb)に変換する
<このアプリを作成した理由>
■このアプリが無いと、自分自身、本当に困ってしまいます。
登録した情報をどこかに「メモ」しておけば、済むことなんですけどね。。。どこに保存したか。。3か月も経つと不明になります。
■お客様にも、数年前に無料で提供していますが、これがまた、手前味噌ですが、評判なんですね。
■世の中に、パスワードを管理するアプリは、Windows、iOS、Android版でたくさんありますが、本当にシンプルに作ってあります。
ですので、Accessをお持ちで、欲しい方は、自分で作成してみて下さい。
大きく分けて、
・管理データの検索画面、管理データの保守(登録)画面の2つの画面
・ドロップダウンリストに表示する為の項目を登録する為の2画面です。
Sponsored Links
1.データテーブル作り方について
作り方と書いて。。。。どこから始めるかですが、このようなデータベースを作成する時に、まず必要なのが、どんなデータ項目が必要なのかですね。 一番、肝心な部分です。
1)まず、必要な項目を「紙」に書きだしてみます。
(1)分類名———->ドロップダウンリストより選択できるようにする。
(2)管理名称——–>自分で、好きな名称を手入力できるようにする。
(3)項目番号、項目内容
3行分の管理する項目と内容は、1つの管理データで、パスワード、メールアドレスなど、何項目あれば、足りるか? まあ3つくらい有れば。
(4)メモ欄1——–>自分で、好きな名称を手入力できるようにする。
(5)メモ欄2——–>自分で、好きな名称を手入力できるようにする。
2)データベースですので、データのテーブルを作成(登録)する必要があります。
ここが肝心です。
下記画面より、実際のデータを登録する為のデータテーブルのデータ定義を実施します。
<TF_管理データ : テーブルデータの管理画面>
各データ項目の「データ型」を決める必要が有ります。
項 目 | データ型 | |
1 | 番号 | これは、登録時のデータベースのレコードのキーとなる項目です。「オートナンバー型」にしておけば、登録時、自動で番号を生成してくれます。 |
2 | 分類コード(分類名) | ドロップダウンリストより選択できるようにするので、実際は「数値型」 |
3 | 管理名称 | 自分で、好きな名称を手入力できるようにするので「テキスト型」 |
4 | 3行分の管理する項目と内容 | ・項目番号 : ドロップダウンリストより選択できるようにするので、「数値型」 ・項目内容 : 自分で、好きな名称を手入力できるようにするので「テキスト型」 |
5 | メモ欄1 | 自分で、好きな名称を手入力できるようにするので「テキスト型」 |
6 | メモ欄2 | 自分で、好きな名称を手入力できるようにするので「テキスト型」 |
このように、管理する項目内容が決まったら、名称と項目のデータ型を指定して、テーブルの作成作業を実施します。
2.処理画面について
パスワード管理 メインメニュー 画面
クリックすれば、該当の処理画面を開くようにしてあるだけです。
フォームを新規で起こして、編集モードで、ボタンを配置後、「管理データ検索」ボタンを右クリックして、プロパティ選択すると「プロパティシート」が表示する。
「プロパティシート」で、
「イベント」タブをクリックして、「…」をクリックすると、コードを入力する画面が表示されますので、下記のプログラムコードをコピーして、名称などを編集すれば、そのまま使用できます。
****************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 |
Private Sub コマンド3_Click() On Error GoTo Err_コマンド3_Click Dim stDocName As String Dim stLinkCriteria As String DoCmd.Close ‘自分自身(メインメニュー)を閉じる命令 ‘開くフォーム名を指定するだけ stDocName = “F_管理データ一覧検索フォーム” ’F_管理データ一覧検索フォーム(画面)を開く命令 DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_コマンド3_Click: Exit Sub Err_コマンド3_Click: ‘エラー処理 MsgBox Err.Description Resume Exit_コマンド3_Click End Sub |
****************************************************
このVBのオブジェクトコードを使いまわせば、メイン画面は完成します。
変更するのは、
・フォームの名称部分のみで、コピーして使えば良いだけです。
・ジャンプ先などのラベルの名称を変更する。
① 管理データ検索 画面
データの抽出をする画面ですので、ちょっと、頑張っています。
いくら、登録しても、探し出せなければ、使い物になりませんので。。。
<抽出条件>
・分類名で抽出(から、までで指定)
・管理名称で抽出
あいまい検索と記載していますが、文字列の部分一致検索が可能です。
例えば、Googleと入力すると、「Google」と記載されたレコードを全部抽出します。
「表示の実行」ボタンをクリックした時の動作コード
****************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
Private Sub コマンド55_Click() On Error GoTo Err_コマンド55_Click stkey = 0 '変数を宣言し、空の文字列を代入 Dim stCri As String stCri = "" '[分類名から、分類名まで]が空の文字列ではないとき、変数に条件を格納 If (Me.分類名から <> "") And (Me.分類名まで <> "") Then stCri = "[分類コード] Between " & Me.分類名から & " And " & Me.分類名まで & "" End If '[管理名検索]が空の文字列ではないとき、変数に条件を格納 If Me.管理名検索 <> "" Then '変数に条件設定済みの場合、AND条件を追加 If stCri <> "" Then stCri = stCri & " And " stCri = stCri & "[管理名称] Like " & " '*" & Me.管理名検索 & "*'" End If 抽出処理: Me.Filter = stCri Me.FilterOn = True Exit_コマンド55_Click: Exit Sub Err_コマンド55_Click: MsgBox Error$ Resume Exit_コマンド55_Click End Sub |
****************************************************
<並び替え機能>
・番号、分類名、管理名称をクリックすることで、並び替える事が可能です。
② 管理情報 保守画面(データ登録用)
登録を実施する時は、この画面より、1件、1件登録する必要が有ります。
ちょっと面倒ですが。。。あえて、一覧画面から登録する処理はありません(便利は分るが、シンプルに!)
<入力(登録)項目>
1)分類名(ドロップダウンリストより選択)
2)管理名称(自分で、好きな名称を手入力)
3)3行分の管理する項目と内容
管理する項目をドロップダウンリストより選択して、実際のデータ(パスワード、メールアドレスなど)を手入力。
4)メモ欄1
5)メモ欄2
管理している項目は、たったこれだけです。
「新規追加」ボタンをクリックした時の動作コード
****************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Sub 追加_Click() On Error GoTo Err_追加_Click DoCmd.GoToRecord , , acNewRec Exit_追加_Click: Exit Sub Err_追加_Click: MsgBox Err.Description Resume Exit_追加_Click End Sub |
****************************************************
<補足説明>
例えば、定義した「管理データ検索」ボタンをクリックした時の動作コードを埋め込むには
①画面のモードを「デザインビュー」にする。
②「管理データ検索」ボタンを指定する。
③「プロパティシート」をクリックして、プロパティシート画面を表示
④クリック時のイベントコードを定義する為にクリックする。
ビジュアル ベーシック 画面が表示されますので、ここでコードを定義します。
「コマンド3(管理データ検索)」をクリックした時の画面を表示するためのVBAコードです。
****************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
Private Sub コマンド3_Click() On Error GoTo Err_コマンド3_Click Dim stDocName As String Dim stLinkCriteria As String DoCmd.Close stDocName = "F_管理データ一覧検索フォーム" DoCmd.OpenForm stDocName, , , stLinkCriteria Exit_コマンド3_Click: Exit Sub Err_コマンド3_Click: MsgBox Err.Description Resume Exit_コマンド3_Click End Sub |
****************************************************
<コード解説1>
これは、決まり金時の記述です。
****************************************************
1 2 3 4 5 6 7 8 9 10 11 12 13 |
Private Sub コマンド3_Click() On Error GoTo Err_コマンド3_Click ’エラー発生時にジャンプさせて終了する。 処理内容 Exit_コマンド3_Click: Exit Sub Err_コマンド3_Click: MsgBox Err.Description ’エラー時にエラー番号を表示させる Resume Exit_コマンド3_Click End Sub |
****************************************************
<コード解説2> 処理内容
***************************************************
Dim stDocName As String ’データ定義
Dim stLinkCriteria As String ’データ定義
DoCmd.Close ’現在、開いているフォームを閉じる
stDocName = “F_管理データ一覧検索フォーム”
DoCmd.OpenForm stDocName, , , stLinkCriteria ’F_管理データ一覧検索フォームを開く命令文です。
***************************************************
実際の命令文は、たった2つです。
・DoCmd.Close フォームを閉じる
・DoCmd.OpenForm~ フォームを開く
③ 分類名 保守画面
「分類名」テーブルは項目を入力できるように、一覧形式の画面を定義します。
④ 管理項目名 保守画面
「管理項目名」テーブルは項目を入力できるように、一覧形式の画面を定義します。
■Access2010のランタイム
ランタイムは、作成したデータベースを動かすだけで、データベースを修正したりすることはできません。
あくまで、作成したAccessデータベースを複数人に配布する時にインストールして、使用できる状態にするだけです。
・Office365 関連 ダウンロードセンター
https://www.microsoft.com/ja-jp/download/office.aspx?WT.mc_id=OAN_ja-jp_MSCOM-Footer-Downloads-officeDownloads
■AccessのVBAを習得するには、上記の参考書がお勧めです。
—関連記事—
・第1回 マイクロソフト ACCESSでデータベースを作成するには
・第2回 Accessで、「得意先マスター保守」処理画面を作成してみる。
・第3回 Accessで、「得意先マスター保守」処理画面を作成してみる。
・第4回 マイクロソフト ACCESS(アクセス)でデータベースを作成 検索・抽出処理
・第6回 EXCELで作成した住所録をAccess2010に取り込んではがき宛名印刷をしてみる。
・第7回 郵便局の郵便番号簿データをダウンロードして、郵便番号・住所検索用のアプリをAccessで作成してみる。
—関連記事—
・Access 2013 の新機能とAccess 2013 で廃止、変更された機能とバージョンアップの必要性について
・マイクロソフト、「Access」の便利な機能を使って、業務アプリケーションを作成して活用する。
・第1回 ACCESS(アクセス)データベース作成ソフトを使ってみたいと思っている方へ
・第2回 ACCESS(アクセス)データベース作成ソフトについて
・第3回 ACCESS 2007の情報
・第4回 ACCESS トラブル対処の情報1「mdbが壊れてしまった時」
・第5回 ACCESSを「ファイル共有」で使用する場合の注意事項
・第6回 ACCESS トラブル対処の情報2 「メモリ不足」エラーについて
・第7回 ACCESSで Jet 4.0 データベースの動作環境を最適に保つ方法
・第8回 Access 2000とMSDEを利用してクライアント/サーバーシステムを構築する
・第9回 ACCESS 2010の情報
・第10回 Access2000(mdb)からAccess2010(accdb)に変換する
Sponsored Links
コメント
どこでデーターを配布していますか?
教えてください。
米子モン 様
コメントありがとうございます。
どこでデーターを配布していますか? という質問ですが、「データーを配布」って、なんの「データー」でしょうか?
ちょっと、おっしゃっている意味が、全然分かりませんが。。。。