アクセス2000を使用しています。
フォームにグループ化した3つのボタンを作りました
○30% --> 1
○50% --> 2
●70% --> 3
テーブルには1(、2、3)という数値が記録されます。
レポートでは
3ならにこちゃんマークの画像を、
2ならふつうのマークの画像を、
1ならがっかりマークの画像を、
という具合にレポートで画像を表示する場合
どうやればよいでしょうか?
VBAはやったことありますが、ラジオボタン
のVBAは利用したことがありません。
詳しく教えて頂けると大変助かります。
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
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
で可能なのですが・・・
帳票フォーム(レポート)の場合は難しいです。
サブフォーム(レポート)を埋め込んで・・・とも考えたのですが
画像サイズはアイコンぐらいの大きさでしょうから・・・
ちょっと良いアイディアが思い浮かびません。
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
レポートの方は、これを応用してください。
回答ありがとうございました。
残念ながら上手くいきません。
画像が表示されないんです。
Me.イメージ1.Picture = "C:\Data\がっかりマーク.jpg"
.Picture のところは別のものになることはないでしょうか?
No.1
- 回答日時:
顔文字とかじゃ駄目ですかね・・・
適当なテキストボックスを作成して、コントロールソースに
=Choose(フィールド名,"(-_-;)","^/^","(^_^)v")
では?
でなければ画像を三個重ねて配置して
レポートの詳細セクションのフォーマット時イベントに
Me!画像1.Visible = Me!フィールド名 = 1
Me!画像2.Visible = Me!フィールド名 = 2
Me!画像3.Visible = Me!フィールド名 = 3
でも。
回答ありがとうございました。
せっかく回答頂きましたが、なぜか表示されません。
どうしてなのか思案中です。
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が見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelのVBAコードについて教えてください。 1 2023/04/21 13:46
- C言語・C++・C# このプログラミング誰か教えてくれませんか 1 2022/06/02 15:27
- 知的財産権 パワポでなどしで使用するBingなど著作権があるような(著作権の対象となることがあると表示される)場 4 2023/08/21 11:19
- Excel(エクセル) エクセル VBA セルの結合 2 2022/09/07 11:48
- Excel(エクセル) エクセル・スプレッドシートで、一定数を超えたらゼロから再累計する方法 8 2022/05/28 03:52
- フリーソフト 倍率自動調整して全画面表示できるフリーの画像ビューアー 1 2023/08/24 10:55
- Instagram インスタの画像を複数枚投稿出来るものと出来ないものがある問題についてどなたか教えて下さい。 インスタ 4 2022/06/07 13:53
- PowerPoint(パワーポイント) 音声マークを一括非表示にしたい。 3 2022/04/09 21:30
- Visual Basic(VBA) ChatGPTに作らせたい Excel VBA 1 2023/04/05 19:56
- iPhone(アイフォーン) iPhoneのデータ通信、SIMカードについて質問です。 海外で使うためにSIMカードを変えたのです 2 2022/05/14 00:10
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
access 更新クエリについて
-
Access レポート印刷するときに...
-
Access で半角スペースと全角ス...
-
Accessのクエリで、replace関数...
-
ACCESS VBA でのエラー解決の根...
-
accessデータを指定したExcel、...
-
アクセスの更新クエリでカレン...
-
Microsoft365にAccessってあり...
-
Accessのスプレッドシートエク...
-
Vba Userformを前面に出すについて
-
Accessレポートのチェックボッ...
-
アクセス 削除するレコードを含...
-
Accessのフォーム上のテキスト...
-
Accessのテキストボックスの入...
-
アクセス フォームの自動入力
-
Access VBA [リモートサーバー...
-
accessのフォームに設置したボ...
-
Accessのリンクテーブルのパス...
-
アクセス レポートを開いたとき...
-
アクセス where句を使用して複...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Access レポート印刷するときに...
-
Accessのクエリで、replace関数...
-
Microsoft365にAccessってあり...
-
Accessのスプレッドシートエク...
-
Access VBA を利用して、フォル...
-
ACCESS VBA でのエラー解決の根...
-
Vba Userformを前面に出すについて
-
【Access】Dcount関数の複数条...
-
CSVファイルの「0落ち」にVBA
-
実行時エラー3131 FROM 句の構...
-
Accessレポートのチェックボッ...
-
accessデータを指定したExcel、...
-
Accessのリンクテーブルのパス...
-
Access 複数条件検索の設定が上...
-
access2019 チェックボックスと...
-
Access で半角スペースと全角ス...
-
Access IF文でテーブルに存在し...
-
アクセスの更新クエリでカレン...
-
Access VBA [リモートサーバー...
-
アクセス ステップインのやり方
おすすめ情報