<Access From 明細行の色を変化させたい>
どうも、三流プログラマーのKen3です。 今回は、 Access From 明細行の色を変化させたい そんなお話です。 http://www.ken3.org/vba/lzh/vba158.lzh にサンプル圧縮しておきます、Access2000版ですが使ってみてください。 関連項目、 Access UserForm/サブフォームを操作する http://www.ken3.org/cgi-bin/group/vba_access_userform.asp もヨロシクね。/* * 1.今回のキッカケ */
掲示板に下記の質問をもらいました。 ---------- >フォームに10件のレコードが表示されていてテキストボックスにはすべて編集不可に >していて、レコード移動等も一切無い表形式フォームでレコードの項目が重複してい >る場合はどのようにすればよいのでしょうか? > >・クエリテーブル(部屋番号、名前) > >フォーム例(表形式) >-------------- >部屋番号 名前 >-------------- >101 A >102 B >102 C >103 D >-------------- う〜ん、、、どうするんだろう? 掲示板の返信には、 私も少し考えてみますが、他の掲示板も探っていてください。 ※若い頃、思い出して、お客さんに不可能と言われるとムツっと来てやってみるかな・ ・・期待しないで下さいね。。。。(もう若くないので、頭もやわらかくないし・・・) と書いてたけど(オイオイ、また他店の紹介ですか・・・)/* * 2.表形式のフォーム、レコード移動時に色変えても無駄 */
よく言われる話なのですが、 金額がマイナスの時は、赤く表示してくれと言われます。 赤ですか・・・わかりました。それくらい楽勝だろうと軽く引き受ける。 レコード移動時のイベントで、明細行のプロパティ変えればイインダロ。 なんて感じで、安易に修正すると・・・ ID 氏名 金額 1 A子ちゃん \50,000 2 B子ちゃん \60,500 3 借金けんぞう -\200,000 とテスト1テーブルがあって、ここで金額がマイナスなら赤にしてみます。 まず普通にオートでフォームを作ります。↑普通に作ったフォーム ここのレコード移動時のイベントで色を変えてみます。
Private Sub Form_Current()
'金額がマイナスかチェックして、バックカラーを赤にする
If Me![金額].Value < 0 Then
Me![金額].BackColor = RGB(&HFF, &H0, &H0) '赤
Else
Me![金額].BackColor = RGB(&HFF, &HFF, &HFF) '白のまま
End If
MsgBox "色変えたよ確認してね"
End Sub |
↑全てが真っ赤の赤っ恥画面
原因は、表形式のフォームを作っても、
プロパティはそれぞれの明細にあるのではなく
プロパティを変更すると明細行全てに変更がかかってしまうためです。
残念、レコードを見ながら、色って変えられないのね・・・・
↑コントロールソースにIIFを使用した例
実行すると、無事1つの項目金額を2つのテキストボックスに振り分けれました。
↑実行結果
まぁ、実行結果みると赤で-\200,000となっていますよね。
細かいこと気にする人は、
出金のコントロールソースで-1を*してください(マイナスをかけて+にしてね)
=IIf([金額]<0,[金額]*-1,"")
あとは、わかりましたよね?
次の小細工は、テキストボックスを重ねて、背景スタイルを透明にします。
するとこんな感じになります。
↑小細工して2つのテキストボックスを重ねてみた
IIfで1つの項目を2つのテキストボックスに振り分け、
背景色を透明にして、テキストボックスを重ねる。
こんな小細工をすると、ある条件で色を変えられそうです。
※ここまでするかって感じだけど。
↑部屋番号の数を数えたクエリー
すると、通常は1(自分自身の数)で重複している部屋は2〜となります。
あとは、この項目を利用して、テキストボックスを2つ作り、背景透明のセコ技を・・
↑部屋番号の重複で色を変えたサンプル。
ここまで、読んでいただきどうもです。ここから下は、三流君のホームページの紹介・案内です
目的の情報が見つかったか?少々心配しつつ、、、
|
気になったジャンル↓を選択してください。 人気記事(来場者が多いTOP3): Excel関係: Access関係: その他:VBAの共通関数やテキストファイルの操作など 開発時の操作: [F1を押してHELPを見る]/ [Debug.Print と イミディエイトウインドウ]/ [実行時エラーでデバッグ]/ [ウォッチ式とSTOP]/ [参照設定を行う] 仕様書(設計書?) XXXX書類: [基本設計書や要求仕様書]/ [テスト仕様書 テストデータ]/ [バグ票]/ [関数仕様書]/ [流れは 入力・処理・出力] ※↑文章の味付けが変わっていて、お口に合うかわかりませんが。。。 |
Blogとリンク:[三流君の作業日記]/
[VBAやASPのサンプルコード]/
広告-[通販人気商品の足跡]