• ベストアンサー
  • すぐに回答を!

【ACCESS】コマンドボタンのクリック(イベント実行)の権限

フォームにある数あるコマンドボタンの中の、1つのコマンドボタンにだけ権限を設けて、管理者だけがクリック(イベントを実行)できるようにしたいのですが、どうやったらいいのか分かりません。 クリックすると、パスワード入力のINPUTボックスが表示されるってのは可能でしょうか? もし可能であれば、方法を教えてください。 また不可能であれば、できるだけ簡単にイベント実行の権限を設けたいので、教えてください。よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • 回答数3
  • 閲覧数746
  • ありがとう数2

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

  • ベストアンサー
  • 回答No.3

No2 の人から回答がないようなので、代わりにお答えしましょう。 >DBはmdeにして、コードを参照不可にする というのは、プログラムでどうこうするということではありません。 メニューのツール→データベースユーティリティ→MDEファイルの作成 で、MDBファイルをMDEファイルに変換してやると、コードの中身が見れなくなります。 If XXXX = "PA4819" Then ... のように記述しても、MDEにしてやるとコードに記述しているパスワードが見れないので大丈夫なんじゃないでしょうか、ということですね。 この方法だと、パスワードを変更しようとするとコードを修正しなければならないですけど・・・

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ありがとうございます。 やってみたいと思います。

関連するQ&A

  • VB6 コマンドボタン クリックイベントについて

    教えてください。 フォームに貼り付けているコマンドボタンのクリックイベントについてですが、クリックイベント内の処理で処理に時間がかかります。コマンドボタンを1度クリックすると、この処理を実行します。この状態であれば、問題ないのです。ところが、コマンドボタンを押して、処理している間にコマンドボタンを連打すると、ずーっと同じ処理を繰り返してしまいます。 クリックイベントが待ち行列にたまっているように思えるのですが、 これを回避する方法などがあれば教えてください。 ・待ち行列をクリアするとか ・待ち行列にイベントがたまっていても、1度しか実行しない。 などなど、具体的な方法とサンプルコードなどを教えていただけないでしょうか。お願いします。 環境VB6 WIN2K です。

  • コマンドボタンがきかなくなる

    アクセスのフォーム上にコマンドボタンがいくつかあります。 たまにですが、コマンドボタンを押しても何も反応しなくなる時があります。 プロパティでクリック時に[イベント プロシージャ]と書いてあり、 VBE画面を見てみると ちゃんとイベントが記載してあります。 しかしフォームビューにしてそのコマンドボタンをクリックすると何も起きません。 新規にコマンドボタンを作って、vbe画面で同じイベントを張り付けると 新規のコマンドボタンのほうではクリックしてイベントが実行されます。 だから、その新規のコマンドボタンの名前を変えて使い続けるのですが、 しばらくするとほかのコマンドボタンがまたきかなくなる時があります。 これはアクセスのバグでしょうか? 原因がわかりません。 バージョンは2010です。

  • accessで ラベルをクリックしたときにコマンドボタンのような動作をさせたいのです。

    こんにちは。よろしくお願いします。m(__)m アクセスのフォームに、コマンドボタンを貼り付けて、クリック時にいろいろな動作を設定しているのですが、コマンドボタンには色をつけられないので、なんだか味気ないのです。 それで、ラベルを使うと色もつけられるし、クリック時のイベントプロシージャーも使えるし、便利だよと教えてもらったのですが、クリックしても、したのかどうか、わからないので、頼りないのです。 そこで、マウスボタンクリック時と、解放時のイベントプロシージャーを設定してやるといいよときいて、そうかぁ、なるほどぉ!! と思い、やってみようとしているのですが、どのように設定したらいいのか、さっぱりわかりません。 クリックしたときに、コマンドボタンのような動作をさせるには、どのように設定したらいいのか、教えていただけるとうれしいです。 よろしくお願いします。

その他の回答 (2)

  • 回答No.2
  • uekuni
  • ベストアンサー率0% (0/1)

管理者を何で判断するかによって方法が変わって きますが、最も簡単であるのは、クリックのイベント にて、INPUT BOXを表示させて、パスワードを 設定させる事でしょうか。 パスワードの管理はVBAにハードコーディングして DBはmdeにして、コードを参照不可にする事で 可能ではないでしょうか。 INPUT BOXの使用方法はHELPにて 確認して下さい。

共感・感謝の気持ちを伝えよう!

質問者からの補足

>パスワードの管理はVBAにハードコーディングして DBはmdeにして、コードを参照不可にする事で 可能ではないでしょうか。 VBAを勉強中ですが、まだまだ初心者なので、 VBAでどのようなprogramを組んだらいいのか、 いまいちよく分かりません。 もしよろしかったら、教えていただけませんか。

  • 回答No.1

アクセスのユーザーアカウントは作成されているのでしょうか?アクセスのユーザーを使用するのなら、フォームのロード時にカレントユーザーが管理者かどうかを調べてコマンドボタンの .Enabled プロパティを設定してやればいいんじゃないでしょうか。 Private Sub Form_Load() If CurrentUser = "Admin" Then コマンド1.Enabled = True Else コマンド1.Enabled = False End If End Sub

共感・感謝の気持ちを伝えよう!

質問者からの補足

ありがとうございます。 試してみたいと思います。

関連するQ&A

  • Access コマンドボタンクリックでサブフォームに結果表示

    Access初心者です。 フォームに50音順コマンドボタンを作成、 コマンドボタンの「あ」をクリックしたら、下のサブフォームに 「あ」から始まる名前を表示したいのです。 サブフォームに表示するクエリの抽出条件にどのようにを入力するのでしょうか?あいまい検索?? コマンドボタンのイベントからマクロを作成するのでしょうか? すごく初歩的な質問ですね、、、お恥ずかしい どなたか教えていただければうれしいです。

  • ACCESSのイベントで

    こんにちは。 ACCESSのフォームに、テキストボックスと コンボボックスがいくつかあり、 コマンドボタンが1つあります。 コマンドボタンを押す(クリック)すると、 その直前までアクティブだったコントロールの 名前(cmb○○ or txt○○ にしてます)が 知りたいのです。 どうすればよいでしょうか。お願いします。 ちなみに1つのフォームにコントロールが20~30あり、 そういうフォームが30~40こあるので、 そのコントロールに1つ1つイベントを 追加していく(forcusイベント等で変数に代入していく) 方法以外でお願いします。 なにしろ、全部で1000こ近くあるので・・・

  • コマンドボタンにパスワードを設定したい

    マスターフォーム「メニューのフォーム」にコマンドボタンを複数配して、テーマ毎に収めたデータベースを開いて使っています。例えば「名簿管理や資格管理、その他多数」ですが、名簿管理を含めた幾つかのコマンドボタンにパスワードを設定したいと思っています。 [使用イメージ] コマンドボタン「名簿管理」を選択するとフォーム「名簿管理フォーム」が開きます。名簿管理フォームには「データ入力フォーム・一覧フォーム・検索フォーム」などを開くコマンドボタンを複数配しています。 [やりたいこと] コマンドボタン「名簿管理」で名簿管リフォームを開く際に、パスワードを設定してパスワードを入力しないと名簿管リフォームが開かない様にできればと思います。

  • クリックイベントは実行されない

    サブフォームのテキストボックスにクリックイベントでVBAを実行するようにしてるのですが クリックしても何も反応がありません。 だけど試しに同じテキストボックスに、フォーカス取得後のGotFocusイベントを[イベント プロシージャ]で選択してみましたが テキストボックスにフォーカスが触れるとイベントが実行されます。 なぜクリックイベントは実行されないのでしょうか? サブフォームは帳票フォームです。それ関係ありますか?

  • Accessにてコマンドボタン時にエラー

    Access2003にてメインフォームに様々なボタンを作成し、処理を実行させようとしています。 「クリック時」イベントにマクロを指定する分には問題ないのですが、 コードを選択して実行させると 「イベント プロパティに指定した式 クリック時 でエラーが発生しました:Microsoft AccessがOLEサーバーまたは ActivXコントロールと通信している時にエラーが発生しました。」 の表示がでます。 一旦、コマンドボタンを削除して、1からやり直してみたのですが うまくいきません。 解決方法をご教授ください。

  • 管理者権限を与えたコマンド実行

    管理者権限の無いユーザーにパスワードを教えずにコマンドを実行させる方法がないか検討しています。 rusas コマンドでは可能なようですが、パスワードをプロンプト要求されることと、それを回避する方法も難しいようです。 psexecコマンドではユーザー名とパスワードをパラメタで渡すことが可能なようですが、リモートコンピュータでの実行が前提になっているのか、ローカルコンピュータ上での動作がうまくいかないようです。 やりたいことは、ネットワークで繋がっていないPCに対してのIPアドレスの変更です。 IPアドレスを変更していない状態で、PCを異動先へ持って行ってしまったため、リモートでの操作ができないためです。 netshコマンドでアドレスの変更は実現できるようですが、これをローカル管理者権限で動かすバッチさえできれば、そのバッチをcom化してパスワードが見えないようにすればなんとかなるのではないかと思っています。 psexec -u localuser -p password 動作させたいコマンド と入れると、 最後に動作させたいコマンド exited with error code 1 と出てきてエラーになります。 フルパスで入れると、エラーは出なくなります。 これで問題無いとしても、今度はフルパスで決まった場所にコマンドをコピーするのに苦労しますが、他に方法は無いでしょうか?

  • コマンドボタン

    よくわからないのですが エクセルのコントロールツールボックスのコマンドボタンだとイベントはたくさんあるけど、 フォームのコマンドボタンだとクリックボタンしかないのですか? フォームのコントロールはコントロールツールボックスの劣化版と言う感じですか? 添付画像の事です。

  • ACCESS コマンドボタンが使えない・・・

    フォームに配置したコマンドボタンが「現在このアクションを実行できません」のメッセージが出て使えなくなります。 マクロを割り当てて作ったコマンドボタンも同様で、「他の作業を実行しているためにこのアクションを実行できません・・」とメッセージが出ます。 最初、フォームを開いたときは問題なく使用できます。フォーム上のコンボボックスに入る値を、クエリから拾っているのですが、その値を別フォームで新規登録しようとするときに発生するみたいです。 他の作業を実行中とありますが、何を実行中で止まってしまうのか、調べる方法はないでしょうか? 良いお知恵をお貸し下さい。お願いいたします。

  • Accessのコマンドボタンについて

    Access97を使用しています。 Accessのレポート(単票形式)を作成したのですが、画面上のコマンドボタンをクリックしようとしてもカーソルが「虫眼鏡マーク」のままで作動しません。 超初心者なので「フォーム」と「レポート」の区別が今一つ付いていないのですが、「レポート」上ではコマンドボタンは使えないのでしょうか? やりたいことは、 (1) コマンドボタンを押すと、入力用フォームから該当するレコードの単票形式レポートが出力されるよう、設定したい(いちいち該当ページ番号を指定して印刷するのが面倒なので)。 (2) コマンドボタンを押すと、該当するレコードの入力用フォームと単票レポートとの間を行ったり来たり出来るようにしたい(修正・追記が多いので)。 現在は、入力用と出力用の2つの「フォーム」を作成してデータの行き来をしているのですが、レイアウトが違うだけでデータソース自体は全く同じなので、何となく間が抜けている気がするのです。メモリも食いそうだし。 初歩的な質問で申し訳ありませんが、宜しくお願いします。

  • コマンドボタンがクリックしても動きません

    Excel2007で簡単なマクロを組んで、コマンドボタンで実行していたのですが、コマンドボタンをクリックしても反応しなくなりました。マクロを表示して実行すれば動くのですが、復旧するための対処方法ないでしょうか?