プロが教える店舗&オフィスのセキュリティ対策術

こんにちは。
ACCESSで、フォームに該当の数値が入力されると注目!の意味で
その数値を赤太字で表示させたいのですがどのようにしたらよいでしょうか?

実際には、
MAIN_TABLEというテーブルを元にKEY_INというフォームを作っています。
そのフォームのPO_NOに入力したときに赤太字にしたいです。
注目させたいものはBULLETIN_BOARDというテーブルの
CHECK_POというフィールドにリストアップしています。

条件付き書式がいいと分かったので、
KEY_INフォームのPO_NOに設定して、、

フィールドの値
次の値に等しい
DLookUp("[PO_NO]","BULLETIN_BOARD","[CHECK_PO]") 

とすると何の数字でも反応して赤太字になってしまいました。
そして、セキュリティの警告のコンテンツを有効化のボタンを押して
再度確認してみると全然反応しなくなりました。

その後、
DLookUp("[PO_NO]","BULLETIN_BOARD","[CHECK_PO]="&[CHECK_PO])
DLookUp("[PO_NO]","BULLETIN_BOARD","[CHECK_PO]='"&[CHECK_PO]&"'") 
も試してみましたがダメでした。

解決法が分からなくて苦労しています。
教えていただけないでしょうか?

A 回答 (2件)

当方アクセス2007ですが、先程の回答の通りできちんと反映されています。


セキュリティの警告は恐らくマクロやVBA関連で出てくるものかと思うので
条件付き書式等のみではあまり関係ないとは思うのですが・・・(違ったらごめんなさい)

双方のデータ型が「テキスト型」なのであれば
DCount("*","BULLETIN_BOARD","[CHECK_PO]='" & [PO_NO] & "'")>0
で動作するかとは思うのですが
dcountの最初の項目は「"*"」になっていますか?
(あるいは "[CHECK_PO]" 等、BULLETIN_BOARDのテーブル内に存在するフィールド名であれば何を指定しても大丈夫なはずですが、"[PO_NO]"というフィールドがBULLETIN_BOARDに存在しない場合に指定してもdcountで「0」が返され、「>0」が成り立たないので条件付き書式は反応しません)

dcountは質問者様の仰る通り、指定した条件に一致するレコードの「数」を返す関数です。
入力したPO_NOフィールドの値に一致するレコードの数値が返ってきますので、その数値が「1」以上であれば(>0の部分)条件付き書式が適用され、一致がない場合は0が返りますので通常の書式になります。
dlookupで出来るかは私の知識内ではどうか分かりませんが・・・
    • good
    • 0
この回答へのお礼

全く新規のファイルを作って試してみると、回答者様の仰るとおりできました!
しかし、当該のファイルに適用しようとしてもできません。("*"もその通り打ちながら、、)

他の箇所でマクロは使っていますが、この条件付き書式とはやはり関係ないですよね。

ですがDCount関数のしくみはよく分かりました。
ありがとうございます。

もしかすると[PO_NO}のコントロールに何か制限がかかっているとかプロパティを見たら原因があるかもしれませんね。やってみます。

とにかく、ありがとうございました!!

お礼日時:2014/03/05 11:05

dcountではどうでしょうか。



★「フィールドの値」のプルダウンを「式」に変更
DCount("*","BULLETIN_BOARD","[CHECK_PO]='" & [PO_NO] & "'")>0 ※文字列の場合
DCount("*","BULLETIN_BOARD","[CHECK_PO]=" & [PO_NO])>0 ※数値の場合
    • good
    • 1
この回答へのお礼

早速のご回答ありがとうございます。

教わった方法で式に変更して試してみましたが、どうも上手くいきません。
MAIN_TABLEとBULLETIN_BOARDのデータ型がバラバラだったのでテキスト型に合わせてやってみたんですが、う~ん、反応しません。

DCount("[PO_NO]","BULLETIN_BOARD","[CHECK_PO]='"&[PO_NO]&"'")>0
ともしてみましたがダメでした。

コンテンツの有効化が原因でしょうか?相性が悪いとか、、、?
ちなみに、最初ACCESS2003で作ったものを2007に変え、今は2010で使っています。

しかし、DCount関数になるのはなぜですか?数えた数が出てくるのだと思っていました。

お礼日時:2014/02/27 11:07

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A