• ベストアンサー

Access2007 アカウント パスワード

いつもお世話になっております。 Access2007を使用しています。 台帳などを作っているのですが、使用できる人を制限したいとおもっています。 Accessファイルに対してパスワードで保護をかけるやり方はわかったのですが、ユーザーIDとパスワードで開くような仕組みはどのようにしたら作れるのでしょうか? ご存じの方いらっしゃいましたら、ご教授をお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • gadd3
  • ベストアンサー率46% (211/451)
回答No.1

大雑把な流れとしては以下のような感じではないでしょうか? (多少、抜けがあるかもしれませんが) (01)ユーザーIDとパスワードを格納したテーブルを作成。 (02)VBAにて、InputBoxやフォームなどを使って   ユーザーに、ユーザーIDとパスワードを入れさせます。 (03)その内容が、(01)の内容と合っていれば、   普通にmdbファイルを開けるようにします。   間違っていればQuitなどで強制的にファイルを   閉じるようにVBAコードを書きます。 (04)(02)(03)の動作をするプログラムを、Autoexecマクロなどで   ファイルを開いたきに自動起動できるようにします (05)ShiftキーでのファイルオープンやF11キーを無効にします。 ============================== VBAを使わない方法としては、ユーザーレベルセキュリティの機能が ありますが、2007ではそれが消されてしまったと思います。 2003で設定して、 2007で使うことならできたと思います。

rain_kouji
質問者

お礼

ありがとうございました。 何とか、VBAにて書くことができました。 あとは、shiftとF11の無効化のみです。

その他の回答 (1)

  • DexMachina
  • ベストアンサー率73% (1287/1744)
回答No.2

以前のバージョンにあった、「ワークグループの管理」機能を使用しての ユーザーごとのパスワード設定や権限の管理は可能ですが、 適用対象は「mdbファイル」(Access2002-2003形式)に限られます。 http://office.microsoft.com/ja-jp/access/HA101662271041.aspx (「accdbファイル」(Access2007形式)の場合はWindows Sharepoint  Servicesを使うしかない?:この辺り、触れたことがないので・・・(汗)) http://office.microsoft.com/ja-jp/access/HA101656301041.aspx#2 (「Windows SharePoint Services を使用した Web での共同作業」の項を参照) ・・・「ワークグループの管理」を使用した管理は、正直、最初は意味がわからない 感じがするのではないかと思いますが、大雑把な流れだけあっさりと・・・(汗) (詳細は、1つ目に挙げたURLを参照下さい) 1)新規データベースをmdb形式で作成 2)『データベース ツール』リボンの『管理』枠にある『ユーザーと権限』の「▼」  をクリックして、「セキュリティ ウィザード(W)」を選択  ※mdb形式でないと、『管理』枠は表示されないようです。 3)ウィザードに従って、処理を進め、「mdwファイル」と「セキュリティ設定された  データベース」を作成  ※拡張子が「.bak」のファイルは、セキュリティ設定前のファイルです(拡張子   のみ書き換え)。既存のデータベースにセキュリティ設定を行った後で、   パスワードを忘れるなどして開けなくなった場合には必須になるので、   削除はしないことをお勧めします(完全な新規ファイルの場合は削除可)。  ※こちらはAccess2003/2007が共存した環境で使用しています。   Access2007単独だとウィザードが止まるようでしたら、ご容赦願います(汗) ウィザード上では、とりあえずは殆どデフォルトのままでもOkだと思います。 (PIDやWIDといったものが出ますが、通常はこれを入力するシーンは発生しない) 指定するとしたら、ファイル名ぐらいでしょうか。 それ以外は、上記ID系を除いて、後で編集が可能ですので。 (上でウィザードを呼び出した「▼」で   「ユーザー/グループのアカウント(A)」でユーザーやグループの追加/削除が   「ユーザー/グループの権限(P)」で各ユーザー・グループの権限が、  それぞれ編集できます) なお、最後に表示されるレポートは、ウィザード上でも警告が出るはずですが、 必ず保存してください。 (・・・ウィザードの各画面は、念のためスクリーンショットで記録を取った方が  安心かも・・・:  上記のID系が、レポートで「作成済み」としかでなかったような、おぼろげな  記憶があるので) 一応、Access2003時の情報も参考までに挙げておきます: http://office.microsoft.com/ja-jp/access/HP052578541041.aspx ※No.1の方が言われるように独自システムで対応される場合は、Shiftキーを  押しながらファイルを開くと、起動時に動くはずの処理(AutoExecマクロや  自動で開く設定にしていたフォームなど)が行われなくなるので、それについての  対処も必要になるかと思います。  (対処法については「Access AllowBypassKey」でWeb検索して下さい:   Access2007でも多分対応しているはず(汗))

rain_kouji
質問者

お礼

ありがとうございました。 かなり苦戦しましたが、VBAで何とか書くことができました。 あとは、shiftとf11対策なので、「AccessAllowBypassKey」を参照してみたいと思います。

関連するQ&A