• ベストアンサー

ラジオボタンの数値で画像を表示する

アクセス2000を使用しています。 フォームにグループ化した3つのボタンを作りました ○30% --> 1 ○50% --> 2 ●70% --> 3 テーブルには1(、2、3)という数値が記録されます。 レポートでは 3ならにこちゃんマークの画像を、 2ならふつうのマークの画像を、 1ならがっかりマークの画像を、 という具合にレポートで画像を表示する場合 どうやればよいでしょうか? VBAはやったことありますが、ラジオボタン のVBAは利用したことがありません。 詳しく教えて頂けると大変助かります。

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

  • ベストアンサー
  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.4

> .Picture のところは別のものになることはないでしょうか? そんなことは、ありません。 ヘルプで、Picture プロパティを調べてみてください。 それでは、新しい mdb で下記の手順でテストしてください。 Access2000をデフォルトでインストールしたときの画像を使ってのサンプルコードです。 ・ フォームの新規作成で、デザインビューを指定して「オプショングルーブ」コントロールを  1個 配置します。 名前を「フレーム0」とします。 ・ その中に「オプションボタン」コントロールを 3個 配置します。   (名前は不問ですが、一応、オブション2、オプション4、オブション6 とします。)    ・ 「イメージ」コントロールを1個 配置し、最初に表示したい画像ファイルを指定します。   ここは仮に C:\Program Files\Microsoft Office\Office\Samples\CAJLOGO.GIF を   指定します。 コントロールの名前を「イメージ8」とします。 ・ 「フレーム0」を右クリックして「イベントのビルド」を指定して「コードビルダ」を   選択します。 ・ 表示されたコードウィンドウに下記コードを上書きします。 Private Sub フレーム0_BeforeUpdate(Cancel As Integer) Const Pic_Path = "C:\Program Files\Microsoft Office\Office\Samples\" Select Case Me.フレーム0.Value   Case 1     Me.イメージ8.Picture = Pic_Path & "CAJLOGO.GIF"   Case 2     Me.イメージ8.Picture = Pic_Path & "FORLOGO.GIF"   Case 3     Me.イメージ8.Picture = Pic_Path & "NWLOGO.GIF" End Select End Sub ・ このフームに名前をつけて保存します。 ・ このフォームを実行し、各オプションボタンを押して、画像が変わることを確認します。 ・ フォームを開いたときに最初(オプション2)が押された状態に設定するのであれば、  先と同じコードウィンドウに下記コードを追記します。 Private Sub Form_Open(Cancel As Integer)   Me.フレーム0.Value = 1 End Sub

その他の回答 (3)

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.3

ゴメン。大チョンボをしていたかも? 前回の「怪答」は忘れてください。 > テーブルには1(、2、3)という数値が記録されます。 ↑のフィールド名が[充実度]なら。 案1 顔文字でも良い場合 クエリを作成して、デザイングリッドに新たなフィールドを作成します。 例 → 顔文字:Choose([充実度],"×","△","◎") でこのクエリをフォームやレポートのレコードソースに使用すれば 単票フォーム(レポート)でも帳票フォーム(レポート)でも使用できます。 案2 画像を使用する場合  単票フォーム(レポート)の場合 画像を埋め込んで 詳細セクションのフォーマット時イベントに下記のように記載します Private Sub 詳細_Format(Cancel As Integer , FormatCount As integer)   Me!イメージ1.visible = Me!充実度 = 1   Me!イメージ2.visible = Me!充実度 = 2   Me!イメージ3.visible = Me!充実度 = 3 End Sub で可能なのですが・・・  帳票フォーム(レポート)の場合は難しいです。 サブフォーム(レポート)を埋め込んで・・・とも考えたのですが 画像サイズはアイコンぐらいの大きさでしょうから・・・ ちょっと良いアイディアが思い浮かびません。

  • ja7awu
  • ベストアンサー率62% (292/464)
回答No.2

こんな感じで如何でしょうか。 そのフォームにイメージコントロールを1個 配置します。(仮に名前を「イメージ1」とします。) オプション グループの名前を「フレーム1」とした場合、そのフォームのモジュールに 下記のコードを貼り付けます。 画像ファイル名は、実情に合わせてください。 Private Sub フレーム1_AfterUpdate() Select Case Me.フレーム1.Value   Case 1     Me.イメージ1.Picture = "C:\Data\がっかりマーク.jpg"   Case 2     Me.イメージ1.Picture = "C:\Data\ふつうマーク.jpg"   Case 3     Me.イメージ1.Picture = "C:\Data\にこちゃんマーク.jpg" End Select End Sub レポートの方は、これを応用してください。

Scotty_99
質問者

お礼

回答ありがとうございました。 残念ながら上手くいきません。 画像が表示されないんです。 Me.イメージ1.Picture = "C:\Data\がっかりマーク.jpg" .Picture のところは別のものになることはないでしょうか?

  • nicotinism
  • ベストアンサー率70% (1019/1452)
回答No.1

顔文字とかじゃ駄目ですかね・・・ 適当なテキストボックスを作成して、コントロールソースに =Choose(フィールド名,"(-_-;)","^/^","(^_^)v") では? でなければ画像を三個重ねて配置して レポートの詳細セクションのフォーマット時イベントに Me!画像1.Visible = Me!フィールド名 = 1 Me!画像2.Visible = Me!フィールド名 = 2 Me!画像3.Visible = Me!フィールド名 = 3 でも。

Scotty_99
質問者

お礼

回答ありがとうございました。 せっかく回答頂きましたが、なぜか表示されません。 どうしてなのか思案中です。 Private Sub Report_Page() Dim cn As ADODB.Connection Dim rs As New ADODB.Recordset Set cn = CurrentProject.Connection rs.Open "基本情報", cn, adOpenStatic, adLockReadOnly Select Case rs!充実度 Case 1 Me.イメージ132.Visible = True Case 2 Me.イメージ134.Visible = True Case 3 Me.イメージ135.Visible = True End Select rs.Close Set cn = Nothing End Sub

関連するQ&A

  • アクセスのレポートにオプションボタンを表示するには?

    アクセスのフォームで作成したオプションボタンをレポートにオプションボタンの形で表示することは出来るのですか?フォームで入力するとテーブルとレポートに数値(1とか2とか)で出ます。テーブルは数値でもかまわないのですが、フォームにはオプションボタンの形で表示したいのです。それがダメなら文字表示(例・参加・不参加・未定等)でも仕方ないとは思っています。

  • VB2008のラジオボタンについて教えて下さい。

    VB2008で開発をしています。 フォーム上にラジオボタンを3つ配置し、グループ化しています。  ラジオボタン1: radioBut0  ラジオボタン2: radioBut1  ラジオボタン3: radioBut2  グループボックス : GroupBox1 これらのラジオボタンのどれを True にするかを、変数 i で与えます。 Dim i AS Integer  i = 0 の時、radioBut0 を True にします。  i = 1 の時、radioBut1 を True にします。  i = 2 の時、radioBut2 を True にします。 これを、IF文を使わずに、簡潔にコーディングする方法がありますでしょうか。 おわかりの方、教えて下さい。 よろしくお願いします。

  • Access2013のオプションボタンが押せない?

    たとえば、一つのテーブルがあります。 テーブル名:テーブル1 フィールド名:処理済み  Yes/No型 true/false 既定値0 そこで、フォームを作り、「処理済み」フィールドに入力するために グループコントロールにします。 ラジオボタン1:未処理 0 ラジオボタン2:処理済み 1 既定値0にします フォームから入力するとき、未処理はボタンを押せますが、処理済が ボタンがおせないです。 OS:Windows8.1 よろしくお願いします。

  • 最小化最大化のボタンの表示をVBAで設定できない

    アクセス2003を使用しています。 VBAでフォームの最小化最大化のボタンの制御をしたいのですがエラーになってしまいます。 詳しい内容は Private Sub Form_Load() Me.MinMaxButtons = 0 End Sub とすると、  実行時エラー '2448':  このオブジェクトに値を代入することはできません。 となってしまいます。 そのままヘルプを開くと ********************************************************** フォームまたはデータ アクセス ページを読み取り専用にする フォームを読み取り専用にするには、フォームのプロパティを設定します。データ アクセス ページを読み取り専用にするには、グループ レベル プロパティを設定し、データ アクセス ページに含まれるグループごとに読み取り専用にします。 ********************************************************** となっています。 MinMaxButtonsのヘルプには ********************************************************** フォームの最大化ボタンと最小化ボタンを表示するかどうかを示します。 値の取得および設定が可能です。 ********************************************************** と書かれてるのでVBAで設定可能だと思いますがなぜかできません。 よろしくお願い致します。

  • ラジオボタンについて

    こんばんは! Access VBAをはじめたばかりです。いきなり、ラジオボタンの操作のロジックが分からなくて困っていますが、ご存知の方、よろしくお願いします。 構成:フォームの上に、rdo1(ラジオボタン)とrdo2とtxt1(テキストボ   ックス)コントロールが配置されています。 仕様:1.rdo1をクリックして選択する    2.rdo1に確定点(黒の点)が表示されると      同時にtxt1にカーソルをセットさせる。 現在のコーディング:    rdo1_MousDownイベントが発生された時、txt1にカーソルを    セットするというふうにコーディングしています。 しかし 今は、    rdo1をクリックしたことと同時に、txt1にカーソルがセットされ   るのですが、rdo1に確定点(黒の点)が反映されません。 なぜ黒の点が確定されないのかが分かりません。 どなたか 教えてください。   

  • アクセス レポートで表示するには?

    アクセス初心者です。 社員情報のレポートを作成しています。フォームで「性別」という項目があり、オプションボタンで男or女をチェックをします。 テーブルにはテキスト型で「性別」に1or2で入力されています。 その数値をレポートで、1のときは「男」、2のときは「女」と表示するにはどうすればよいのでしょうか?

  • Access2000のフォームに画像を表示する(XP)

    ExelのVBAではある程度のプログラムが組めますが、Accessは2週間前から始めた初心者です。 画像の絶対パスを記録したテーブルを作成し、Accessフォームのイメージウィンドウに画像を表示するところまではできました。 そこで質問なのですが、 1.「C:\sample\test」というフォルダ内に30個ほどの画像があるとして、このフォルダの絶対パスのテーブルからその中にある画像を表示することはできるのでしょうか?というのは、そのフォルダは全部で3万個もあり、つまり画像は全部で90万個もあるのです。 2.クエリで抽出した画像の絶対パスを利用して、その画像をフォームのイメージウィンドウに表示する方法がわかりません。 よろしくお願いします。

  • ラジオボタンの作り方

    Flash8とwinXPを利用しています。 ラジオボタンについて教えてください。 《A》《B》《C》3つのムービークリップを作りました。 ラジオボタン(1)ALL (2)A (3)B (4)C の4つを作り、false・trueを使用して  (1)をクリックすると A・B・C 全部が表示  (2)をクリックすると A のみ表示  (3)をクリックすると B のみ表示  (4)をクリックすると C のみ表示 という画面を作りたいと思っています。 【チェックボタン】では作成できたのですが、【ラジオボタン】の "Group"? がよく分からなくてうまくゆきません。 初歩的なことだと思うのですが注意点等を含めて、教えてください。

    • ベストアンサー
    • Flash
  • JavaScriptのラジオボタンを使って計算をしたい

    JavaScriptのラジオボタンを使って簡単な計算をしたいと考えています。 1-1◎ 1-2○ 1-3○ ←1を選ぶと1点 2-1◎ 2-2○ 2-3○ ←1を選ぶと1点 3-1○ 3-2◎ 3-3○ ←2を選ぶと2点 4-1○ 4-2○ 4-3◎ ←3を選ぶと3点 合計:7点 このときグループは4つあるのですが、それぞれ得点を設定し、グループごとの得点を最後のフォームに表示させたいのです。 初めて、本を買いました。良く分かりません。よろしくお願いします。

  • データベースウインドウを表示させるには?

    アクセスのVBAでコマンドボタンを押すと データベースウインドウをアクティブにするようにしたいのですが どうすればいいのでしょう? (フォームやテーブルより前に表示したい)

専門家に質問してみよう