Access VBA質問箱 IV

当質問箱は、有志のボランティア精神のおかげで成り立っています。
問題が解決したら、必ずお礼をしましょうね。
本サイトの基本方針をまとめました。こちら をご一読ください。

投稿種別の選択が必要です。ご注意ください。
迷惑投稿防止のため、URLの入力を制限しています。ご了承ください。


710 / 2272 ツリー ←次へ | 前へ→

【10453】レポート作成しています さとる 08/7/4(金) 21:11 発言[未読]
【10454】Re:レポート作成しています マルコ 08/7/6(日) 22:21 発言[未読]
【10455】Re:レポート作成しています hatena 08/7/7(月) 0:14 回答[未読]
【10456】Re:レポート作成しています さとる 08/7/7(月) 19:27 お礼[未読]

【10453】レポート作成しています
発言  さとる  - 08/7/4(金) 21:11 -

引用なし
パスワード
   アクセスVBA初心者です。レポートを作成しています。
左上に取引先の名前が縦に3列(テキストボックス)あり、その隣にラベルが同様に3段、設置してあります。
最上段のみにデータがあるときはその隣のラベルを表示
最上段と2段目にデータがあるときは2段目のラベルのみ表示で他は非表示
最上段、2段目、3段目にデータがあるときは3段目のラベルのみを表示
という具合に考えています。自分なりにコードを作成してみましたが、デバックは出ないものの全く何の変化もしません。コードに不備があれば教えてください。
お願いします。もしかしたら 『Private Sub』とか書いているあたりで間違えてたりしませんでしょうか?なにぶん初心者名ものですいません。

Private Sub txttorihikisaki1_afterupdete()
Call change
End Sub

Private Sub txttorihikisaki2_afterupdete()
Call change
End Sub

Private Sub txttorihikisaki3_afterupdete()
Call change
End Sub

Private Sub change()
If IsNull(Me.txttorihikisaki1.Value) = False And _
IsNull(Me.txttorihikisaki2.Value) = True And _
IsNull(Me.txttorihikisaki3.Value) = True Then
labelontyu1.ForeColor = RGB(0, 0, 0)
labelontyu2.ForeColor = RGB(255, 255, 255)
labelontyu3.ForeColor = RGB(255, 255, 255)


ElseIf IsNull(Me.txttorihikisaki1.Value) = False And _
IsNull(Me.txttorihikisaki2.Value) = False And _
IsNull(Me.txttorihikisaki3.Value) = True Then
labelontyu1.ForeColor = RGB(255, 255, 255)
labelontyu2.ForeColor = RGB(0, 0, 0)
labelontyu3.ForeColor = RGB(255, 255, 255)

ElseIf IsNull(Me.txttorihikisaki1.Value) = False And _
IsNull(Me.txttorihikisaki2.Value) = False And _
IsNull(Me.txttorihikisaki3.Value) = False Then
labelontyu1.ForeColor = RGB(255, 255, 255)
labelontyu2.ForeColor = RGB(255, 255, 255)
labelontyu3.ForeColor = RGB(0, 0, 0)

End If

End Sub

【10454】Re:レポート作成しています
発言  マルコ  - 08/7/6(日) 22:21 -

引用なし
パスワード
   レポートですよね?
テキストボックスのAfterUpdateイベントなんて発生しませんよ?
あとラベルの表示ON/OFFは Visible プロパティを切り替える方がベターかと。

【10455】Re:レポート作成しています
回答  hatena  - 08/7/7(月) 0:14 -

引用なし
パスワード
   イベントは、詳細セクションのフォーマット時イベントに記述しましょう。


別案として、
ラベルを右クリックして、「コントロールの種類の変換」でテキストボックスに
変換して、それぞれのコントロールソースを、上から

=IIf(IsNull([txttorihikisaki2]),"御中","")

=IIf(IsNull([txttorihikisaki3]),"御中","")

=IIf(IsNull([txttorihikisaki3]),"","御中")

と設定してもいいですね。

【10456】Re:レポート作成しています
お礼  さとる  - 08/7/7(月) 19:27 -

引用なし
パスワード
   マルコさん、hatenaさんありがとうございます。
詳細セクションにvisibleつかって記述したらなんとか動きました。
今回初めて自分で記述(本読みながら)していたのでとても不安でした。
とてもありがとうございました。


▼hatena さん:
>イベントは、詳細セクションのフォーマット時イベントに記述しましょう。
>
>
>別案として、
>ラベルを右クリックして、「コントロールの種類の変換」でテキストボックスに
>変換して、それぞれのコントロールソースを、上から
>
>=IIf(IsNull([txttorihikisaki2]),"御中","")
>
>=IIf(IsNull([txttorihikisaki3]),"御中","")
>
>=IIf(IsNull([txttorihikisaki3]),"","御中")
>
>と設定してもいいですね。

710 / 2272 ツリー ←次へ | 前へ→
ページ:  ┃  記事番号:
1078200
(SS)C-BOARD v3.8 is Free