• ベストアンサー

Microsoft Access 「Form」のボタンの標題を別テーブルから…

Accessでフォームのボタンの標題を別テーブルから取ってくるようにしたいのですが、どうしたらよいでしょうか? 別テーブル ID / Name 1 / ai 2 / bo 3 / cun フォーム上のボタン button1 標題「ai」 button2 標題「bo」 button3 標題「cun」 みたいな感じにしたいのですが。。 ちなみに、Accessのバージョンは2000です。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 テーブルからデータを取得するのは、DLookup関数を使用します。コマンドボタンの標題はCaptionプロパティに値を設定します。 したがって、フォームの読み込み時イベントなどに、 (テーブルのIDフィールドのデータ型は数値型とします。) Private Sub Form_Load()   Me!button1.Caption = DLookup("Name", "テーブル名", "ID = 1")   Me!button2.Caption = DLookup("Name", "テーブル名", "ID = 2")   Me!button3.Caption = DLookup("Name", "テーブル名", "ID = 3") End Sub DLookup関数の詳細は、ヘルプなどを参照して下さい。

scc213
質問者

お礼

出来ました! ありがとうございます~^^

その他の回答 (1)

  • ryuu001
  • ベストアンサー率61% (46/75)
回答No.2

コントロールを使うとボタンの数が増えたときでも プログラムの変更は不要です。 次のプログラムは  ファイルオープン時のイベントで設定しました。 ボタン名は button1、button2、button3        ~ button11、button12 ・・・と  設定してあるとします。  テーブル名は ”別テーブル”としました。 フィールド ”id”の値は  ボタン名の数字部分と同じにします。 Private Sub Form_Open(Cancel As Integer) Dim cmdbutton As Control For Each cmdbutton In Me.Controls With cmdbutton If .ControlType = acCommandButton Then .Caption = DLookup("name", "別テーブル", "id=" & Mid(.Name, 7)) End If End With Next End Sub

scc213
質問者

お礼

ちょっと、うちの環境?でエラーとか出て、 再現が出来なかったのですが、 面白そうですね! 今度、再挑戦してみます~ありがとうございました!

関連するQ&A

  • アクセス2003のフォーム上のコマンドボタンについて。

    アクセス2003のフォームで一覧を作っています。その中の1つをクリックすると詳細画面に移動させようとコマンドボタンをおいたのですが、下記のエラーが出ます。対処法を教えてください。 エラーの内容です↓ テーブル’業者登録’はほかのユーザーが排他的に開いているか、既にユーザーインターフェイスを介して開いているので、プログラムによって操作することはできません。 ACCESSのバージョンは2003です。 ’メンテナンス進捗’というフォーム上に一覧があり、それぞれに詳細ボタンを置き、その詳細ボタンをクリックするとそのIDに見合ったメンテナンスの画面を開きたいです。 主テーブルは‘メンテナンス‘で副テーブルには’機器登録’と’業者登録’があります。‘メンテナンス‘と’機器登録’は機器管理IDで結ばれ、と’機器登録’と’業者登録’は業者IDで結ばれています。このリレーションの仕方が悪いのでしょうか?分かりづらくて申し訳ありません。

  • <form>タグに2つのボタン

    <form>タグで2つのボタンを表示させ、以下のようにそれぞれのボタンで フィールドに別の値を入れて送信させることはできますでしょうか? できればHTMLで、できなければJavaScriptでできますでしょうか? ・button1を押したときは  フィールド「CASE」に1を入れて送信、  HTMLで書くと、<input type="hideen" name="CASE" value="1"> ・button2を押したときは  フィールド「CASE」に2を入れて送信、  HTMLで書くと、<input type="hideen" name="CASE" value="2"> ===== HTML ====================== <form action="test.cgi" method="post"> <input type="text" name="text1"> <input type="submit" value="button1"> <input type="submit" value="button2"> </form> 宜しくお願いします。

    • ベストアンサー
    • HTML
  • ACCESS2007 サブフォームを別ウィンドで

    ACCESS2007でデータベースを作っています 入力時にフォームを利用していますが、サブフォームを数個入れて使用しています。 今回突発的なイベントがあり、イベントの申込みを管理したいのですが、 フォームがかなり大きくなってしまうので、ボタンを付けてサブフォームを別ウィンドで 開けないか試行錯誤しています。 フォームにボタンをつけ、ウィザードで「フォームを開く」「特定のフォームを開く」「顧客IDでつなぐ」 という設定で作成をしましたが、同フォームの中に入れ込んだサブフォームのように 顧客IDでは結ばれていないものになってしまいました 同フォームであれば、作成したテーブルやクエリをドラッグしてあげれば「顧客ID」で結べるのですが、 これを別ウィンドで立ちあげられるようにするにはどうやればいいでしょうか? ネットで検索してみたのですが、目的のものは見つからなかったので質問させていただきました やり方がわかるかた、または参考ホームページをご存じの方、どうぞよろしくお願いいたします

  • ACCESS VBA テーブルの値のオプションボタンへの反映について

    いつもお世話になっております。 (ACCESSのVERSION 2003) <質問内容> テーブルに設定した値を、フォーム上のオプションボタンに反映させるにはどのようにすればよろしいでしょうか。 例えば フォーム上にオプションボタンを二つ用意  ○出力します  ○出力しません テーブルに出力FLG列(0 または 1の値を持つ)を用意 この出力FLG列の値が0であれば フォーム上のオプションボタン【○出力します】にチェックをいれ 出力フラグ列の値が1であれば フォーム上のオプションボタン【○出力しません】にチェックをいれたい というような処理を行うことは可能なのでしょうか? またどのようにしたら、実行できるのでしょうか? わかる方がいらっしゃいましたら、ご教示お願いいたします。

  • Access2003 テーブルの結合について

    お世話になります Accessのバージョンは2003です Aテーブル ID  単価 1   500 2   3000 4   2000 Bテーブル ID  仕入単価 1   480 2   1500 3   1000 5   500 の二つのテーブルを結合させ ID  単価  仕入単価 1  | 500 | 480 2  |3000 |1500 3  |    |1000 4  |2000 | 5  |   | 500 というようにしたいのですがAccessで可能なものでしょうか 検索で調べては見たのですが、いまいち可不可がはっきりしなかったので

  • formに複数ボタンを配置し、それぞれのボタンに対して、別の複数の値を

    formに複数ボタンを配置し、それぞれのボタンに対して、別の複数の値をPHPに受け渡したいのです。 例としは下記のような命令をしたいのですが、どうしても解決策がわかりません。 1.jpgで作成したボタンをクリックすると、textの"コンニチワ"、textの30、1.jpgが1.phpへ送られる。 2.jpgで作成したボタンをクリックすると、textの"コンバンワ"、textの50、2.jpgが1.phpへ送られる。 下記は、一応自分で作成したものです。 ●sample.html <form method="post" action="1.php"> <input name="namae"type="text"value="コンチニワ"> <input name="namae"type="text"value="コンバンワ"><br> <BUTTON type ="submit"name="submit1"> <IMG src="1.jpg"> </BUTTON> <BUTTON type ="submit"name="submit2"> <IMG src="2.jpg"> </BUTTON><br> <input name="price"type="text"value="30"> <input name="price"type="text"value="50"> -------------------------------- 【sample.htmlの希望表示】 namaeテキスト  namaeテキスト ボタン画像    ボタン画像 priceテキスト  priceテキスト -------------------------------- ●1.php <?php $namae=$_POST['namae'] $kakaku=$_POST['price'] $image=&_POST['image'] ?> もしかしたら、imageについては表示させないテキストに隠して値だけ送るという 手もあるかもしれません。やり方がわかりませんが。

    • 締切済み
    • PHP
  • Accessのフォームとテーブルについて教えてください。

    Access2003を使用しています。 既存のフォームAにフィールド3個を増やしました。 フォームAはテーブル(1)と連動していました。 追加したフィールドはテーブル(6)のものです。 ところがフォーム上で追加フィールドに入力が出来なくなりました。3フィールドのうち、ひとつはコンボボックスです。表示はされますが確定ができません。 フォームAのSQLステートメントではテーブル(1)・(6)以外にテーブル(2)・(3)・(4)・(5)が結合されています。 フォームAからするとテーブル(2)・(3)・(4)・(5)のデータはIDの名称を見るための参照用です。 テーブル(6)は、追加フィールドのコンボボックスが参照用で、他の2追加フィールドは、フォームから入力してテーブル(6)に反映させたいものです。 テーブル(6)の画面では入力できます。 フォーム上からは入力できません。 設定が何か欠けているからでしょうか? 他の質問では2つのテーブルをひとつのフォームにする場合は、クエリを別に設けた方がいいとなっています。フォームが出来上がっているので、できればクエリを設けずに行いたいのですが、よくない方法でしょうか? 手順なども踏まえて教えていただけると助かります。 よろしくお願いいたします。

  • Access 別フォームへの再クエリ(更新)がしたい。

    宜しくお願いします。 仕様環境:WinVISTA Access2007 別フォームから別フォームへの再クエリの仕方を教えてください。 画像を貼らせて頂きます。 まず、後ろのメインフォームから新規作成ボタンを押して、 別のフォーム(作成画面)を開きます。 そこに新しいデータを入力して、閉じますと、 そのままではメインフォームには反映しません。 (テーブルには反映していますが) 別フォーム(新規の作成画面)に再クエリをかけても そのフォームが更新させるだけで、メインフォームに変化はありません。 ちなみにメインフォームに作った更新ボタン(中身は再クエリ)を押すと反映されます。 どうしたら別フォームから後ろのメインフォームを再クエリ(更新)できるのでしょうか? やりたいことは別フォームのOKボタン(画像参照)を押すと 別フォームが閉じると同時にメインフォームが再クエリ(更新)されるとベストです。 (今のところOKボタンの中身は”閉じる”のマクロだけです) 構造は簡単で恐縮ですが、 テーブル:Tメイン フォーム:メインフォーム      作成画面フォームetc.. です。 クエリはメインフォーム自体にクエリビルダを使っていますが、 特別な施しなどはしていません、うまく動作しないところがあって、 いろいろ調べていてそうすると改善すると書いてあったので。。 ちなみにテーブルには「日付」の後順で並び替えをかけています。 当方、VBAに弱いのでマクロで操作できるのでしたらお願いします。 マクロで出来ないものでしたらVBAを教えて頂ければ、 イベントプロシージャに書き込みます。 大変恐縮ですがお知恵をお貸しください、宜しくお願いします。

  • Access 別テーブルの特定フィールドの数

    ■Window7 ■Access2013 いつも、お教えいただき、本当にありがとうございます。 お手数ですが、下記の件につきましてお教えいただきたいとおもいます。 【質問】 テーブルが3つあり、それぞれリレーションで結んでいます。 団体テーブル=団体ID 氏名テーブル=団体IDで団体テーブル fmテーブル=氏名IDで氏名テーブル とリレーションを作成しています。 作成しているフォームは 団体名簿=メインフォーム 氏名=サブフォーム fm=データシートビューで別に作成して氏名IDを手動入力して、氏名テーブルと関連付けが出来るようにしています。 fmテーブルには、[姓]、[名]、[年齢]、[性別]などがあり、この中の[性別]で"男性"の 数をメインフォームに表示させたいのですが、DCountを使って見よう見まねでやっているのですが、どうしても出来ません。どのように式を作ればよいか、お教えいただきたいと思います。 何卒、よろしくお願いいたします。

  • FORMボタン

    このフォーム変なのですか? 見た目は、[年月] [GO] となっていて、 [年月]のセレクトで選んで、 [GO]ボタンを押せばそのページに飛ぶのだと思いますが、 [GO]を押さなくてもセレクトを選んだだけで動作します。 この[GO]のボタンの意味あるんでしょうか? それとも何か間違っていますか? 正しい記述方法があれば教えてください。 <form> <select name="u" onchange="JavaScript:location.href=this.value;return false;"> <option value="http://~~/2009-05-1.html">2009/05</option> <option value="http://~~/2009-04-1.html">2009/04</option> </select> <input type="button" value="GO" onclick="JavaScript: location.href=this.form.u.value; return false;" /> </form>

    • ベストアンサー
    • HTML

専門家に質問してみよう