Accessで管理者用フォームを作成して、そのフォームを開く時はパスワードを知っている人だけがパスワードを入力して開くようにしたいことってよくあります。
以下のようなパスワード入力フォームを作成する方法です。
パスワード入力の場合、よくInputBox関数が使われますが、InputBox関数では入力時の「*」表示はできません。(できないと思う・・・)
パスワード入力用のフォームを作成
まず「F_pass」などの名前を付けて、パスワード入力用のフォームを準備します。テキストボックスの定型入力ウィザード
テキストボックスを一つ作り、プロパティシートのデータタブにある「定型入力」のボタンを押して「定型入力ウィザード」を起動させます。「定型入力名」から「パスワード」を選択します。
「OK」ボタンと「キャンセル」ボタンの作成
「OK」ボタンと「キャンセル」ボタンを準備します。「OKボタン」と「キャンセルボタン」のプロパティから「イベント」タブにある「...」ボタンをクリックすると、「ビルダーの選択」が表示されます。そこで「コードビルダー」を選択すると、VBEが起動します。
以下のように記述します。
フォームのプロパティの設定
フォームのプロパティで「ポップアップ」と「作業ウィンドウ」を「はい」にします。他は、「レコードセレクタ」や「移動ボタン」などを「いいえ」に設定してください。
ウィンドウを重ねて表示するには
また、Access2007ではフォームビューでウィンドウの大きさを設定した大きさのまま表示したい場合は Accessのオプションで「カレントデータベース」の「ドキュメントウィンドウオプション」で「ウィンドウを重ねて表示する」を選択してください。「ウィンドウを重ねて表示」と「タブ付きドキュメント」の違いについては、以下の記事で解説しています。
[タブ付きドキュメント]と[ウィンドウを重ねて表示する]の違い | Access2019 | 初心者のためのOffice講座
Access2003とAccess2007が混在している職場では、もういろいろ大変でっす!!(>_<)
結局、Access2003で作成したほうが問題は少なくて・・・・
Access2007の便利な機能は使われないまま。なんだかなぁーーです。
追記:埋め込みマクロでパスワードを設定する方法を解説しました。
パスワードを入力してフォームを開くようにする | Access2016 | 初心者のためのOffice講座
また、パスワード入力フォームでは、フォームを表示した時に、パスワードを入力するテキストボックスにカーソルがあると便利です。
タブストップの設定で出来ます。
タブストップの設定については、以下の記事で解説しています。
フォームのタブオーダーとタブストップの設定 | Access2016 | 初心者のためのOffice講座