質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

Q&A

解決済

1回答

8004閲覧

Access2016:yes/no型フィールドの結果によってレポートの画像イメージを表示/非表示させたい

th_bridge

総合スコア15

Access

Accessはマイクロソフトによるリレーショナルデータベース管理システムです。オブジェクト指向のアプリケーション作成に対応しており、テーブルや編集をはじめ、クエリ生成、入力フォーム作成、レポート作成など一通りの機能を備えています。

0グッド

0クリップ

投稿2017/05/16 08:56

編集2017/05/18 02:11

「イメージ」というyes/no型のフィールドを持つクエリがあります。
また、このクエリの抽出結果を元に作成されるレポートがあります。

レポートを作成する際、フィールド「イメージ」が、
yesの場合>レポートに画像イメージを表示
noの場合>表示なし
このようにしたいです。

目的としては、レポート(請求書)を作成する際に、
PDFで送る会社宛の請求書には画像イメージ(電子印)付き、
原本で送る会社宛の請求書にはイメージ無しのデータを作成することです。

レポートを作成する際に画像イメージを貼り付けて、
常に表示させることはできたのですが、
これをyes/noに応じて、表示/非表示を切り替えたいです。

言葉足らずな説明かもしれませんが、
上記の内容で分かる方がいらっしゃいましたら
お力添えいただけますでしょうか。

よろしくお願いいたします。

イメージ説明
イメージ説明
イメージ説明
イメージ説明

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

イメージコントロールで画像を表示させているですよね。

ならば、詳細セクション(画像を配置しているセクション)のフォーマット時のイベントプロシージャで可視を切り替えればいいでしょう。

Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer) Me.イメージ1.Visible = Me.電子印表示 End Sub

イメージコントロール イメージ1
yes/no型のフィールド 電子印表示
と仮定してます。

レポート上に、電子印表示 と連結したテキストボックスを配置しておいてください。「可視」は「いいえ」にします。

投稿2017/05/16 22:51

編集2017/05/16 22:53
hatena19

総合スコア33620

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

th_bridge

2017/05/17 03:59 編集

丁寧なご回答ありがとうございます。 >イメージコントロールで画像を表示させているですよね。 画像はExcelで使っている画像をコピーして、 レポートをデザインビューで開いてそのまま貼り付けています。 画像の名前      txt電子印 yes/no型のフィールド 電子印 それぞれの上記のように設定されています。 教えていただいたコードを以下のように書きました。 Private Sub 詳細_Format(Cancel As Integer, FormatCount As Integer) Me.txt電子印.Visible = Me.電子印 End Sub また、レポートに「電子印」と連結したテキストボックスを配置し、 可視を「いいえ」にしました。 その後レポートを作成したところ、 yes/noに関わらず、画像(txt電子印)は常に表示されています。 念のため、可視を「はい」にして確認したところ、 yes/noに従ってTrue/Falseが表示されているので、 配置したテキストボックスは正しく設定できているように思います。 画像をそのまま貼り付けているだけ、ということが問題でしょうか。 お忙しいとは思いますが、もしよろしければ またアドバイスいただけますとありがたいです。
hatena19

2017/05/17 04:57

レポートをデザインビューで開いて、詳細セクションを選択して、 プロパティシートの「フォーマット時」欄に、 [イベント プロシージャ] と表示されていますか。また、その欄の右端のビルドボタン[...]をクリックすると、 VBA画面が開いて、上記のコードが表示されますか。
th_bridge

2017/05/17 07:38

ご回答ありがとうございます。 こちらのコメントでの添付が分からなかったので、 元の質問にご指摘の画面のキャプチャを添付しました。 ご指摘の箇所については正しくできていると思うのですがいかがでしょうか。
hatena19

2017/05/17 09:28

画像では、ちゃんと[イベント プロシージャ]の関連付けはできてるようですね。 エクセルの画像ですが、[挿入]-[画像]で画像ファイルを選択して挿入したものですよね。 コントロールの名前に間違いがなければそれでいいはずなんですが。 デザインビューで画像を選択したときのプロパティシートの画像も見せてもらえますか。 また、画像が配置されているのは詳細セクションで間違いないですよね。
th_bridge

2017/05/18 02:12

ご回答ありがとうございます。 >エクセルの画像ですが、[挿入]-[画像]で画像ファイルを選択して挿入したものですよね。 画像は上記の操作ではなく、Excel上の画像をCtrl+Cでコピーして、 Access側にCtrl+Vで貼り付けました。 >デザインビューで画像を選択したときのプロパティシートの画像も見せてもらえますか。 また、画像が配置されているのは詳細セクションで間違いないですよね。 キャプチャを追加しました。 プロパティシートとデザインビューで開いた画面です。 会社情報と口座情報の箇所は黒塗りで隠しております。 「電子印」となっているのが電子印画像(txt電子印)なのですが、 詳細セクションではなく、請求NOヘッダーセクションに配置しています。 これが正しく動作しない原因でしょうか。 度々お手数をおかけします。 よろしくお願いいたします。
hatena19

2017/05/18 02:52

> 画像は上記の操作ではなく、Excel上の画像をCtrl+Cでコピーして、 > Access側にCtrl+Vで貼り付けました。 そういう意味ではなく、Excelに画像を挿入した時の操作の確認です。画像でない可能性もあるので。 ExcelからAccessに貼り付ける操作は問題ないです。 添付された画像をみると、Accessではイメージコントロールに画像が表示されているのが確認できたので、それも問題ないです。 > 「電子印」となっているのが電子印画像(txt電子印)なのですが、 > 詳細セクションではなく、請求NOヘッダーセクションに配置しています。 原因はこれですね。現状のコードを、請求NOヘッダーセクションのフォーマット時のイベントプロシージャに記述してください。
th_bridge

2017/05/18 03:14

>原因はこれですね。現状のコードを、請求NOヘッダーセクションのフォーマット時のイベントプロシージャに記述してください。 ご指示のようにコードを記述したところ、希望通りの結果ができました。 お忙しい中、丁寧に解決までおつきあいいただき、ありがとうございました!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問