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

ACCESS初心者です。
エクセルでの条件付き書式ならわかるのですが、
同じようなことがACCESSでもできないかと思い、相談しました。
access (2003) 2007 または 2010で

次のようなデータをフォームで表示する際

データ構造

ID ロット 商品名 生産者
1  A   みかん   佐藤
2  A   りんご   武藤
3  A   いちご   江藤
4  A   りんご   武藤
5  B   りんご   須藤
6  B   みかん   津藤
7  B   りんご   江藤
(IDは表示しません)

このデータで 同じロットに同じ生産者の同じ商品が入らないように
チェックをしたいのです。
ですから、このデータでは 
ロット「A」生産者「武藤」商品名「りんご」の行 あるいは一項目が
強調表示されるようにしたいのです。

なにか良い方法があればお教え下さい。よろしくお願いします。

A 回答 (4件)

入力済みのデータなら、重複クエリウィザードで確認できます。


http://www.nbcom.co.jp/PC-Support/FAQ/acc/ht/acc …

新規のデータの追加をさせないなら、ロット、商品ID、生産者コードでユニークキーにすればいいのでは?

まあ条件付き書式でこだわるなら
=DCount("*","テーブル名","ロット = '" & [ロット] & "' And 商品名 = '" & [商品名] & "' And 生産者 = '" & [生産者] & "'") >1

DCount関数
http://office.microsoft.com/ja-jp/access-help/HA …
    • good
    • 0
この回答へのお礼

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

重複クエリで確認できることは知っていたのですが、
ロットの中に入れた商品をすべて表示した状態で確認がしたかったのです。

ユニークキーの設定をするのも考えたのですが、
実は、その重複を許さなければならない場合もあるので
それも出来ませんでした。

DCount まではたどり着いたのですが、なかなかうまくいかず
質問に至ったわけです。

お教えいただいた条件付き書式でチャレンジしてみます。

ありがとうございました。

お礼日時:2014/09/04 14:04

Q、Accessで条件付き書式の設定。


A、それは無理というもの。

理由、表示欄が行と列とで構成されていないから。

【無理の意味】

AccessであれExcelであれ、「それは無理!」ってことはほとんどありません。ですから、「どうしても実現せよ!」という社名が下れば、それに従うでしょう。

添付図は、それを実現した例です。

要件1、非連結フォームとする。
要件2、Accessのフォーム機能を自作する。

つまり、本格的に実現するとなるとクラスモジュールを書く必要があります。移動ボタン同等機能、表示機能。さらに、ややこしいのは、各種イベントを発生させるクラスモジュールも用意しないと実用的ではないかも知れません。

さて、こういう事に挑んだ場合、最終的には実に悲惨な結果が待っている可能性があります。私の場合は、

>おー、出来た!

と思ったら、「XXXオーバーヘッドエラー」が出まくるようになりましたよ。Access95での経験ですが、状況はあーんまり変わっていないのでは・・・。

ということで、「それは無理というもの」です。
「ACCESSで条件付き書式の設定方法」の回答画像3
    • good
    • 0
この回答へのお礼

難しいことなのですね。他の方法を考えます。

条件付き書式が設定できると、どこかに書いてあった気がしたので
質問しましたが、モジュールレベルなのですね。

回答ありがとうございました。

お礼日時:2014/09/04 13:50

>このデータで 同じロットに同じ生産者の同じ商品が入らないように


>チェックをしたいのです
データのダブりを避けるために強調表示させるというのは確かに条件付き書式と言えるかも知れませんが、それはデータベースのデータベースとしての役割から外れた機能です。

条件津書式より入力規則を設けるべきです。
http://hamachan.info/win7/Access/msg.html
    • good
    • 0
この回答へのお礼

ありがとうございます。

データの例では、必要項目のみをあげましたので
言葉足らずになってしまったようです。申し訳ありません。

入力規制も検討してみます。ありがとうございました。

お礼日時:2014/09/04 13:56

クエリで集計クエリにしてグループ化すればすべて同じ行は一つのグループになり一行しか表示されません。

    • good
    • 0
この回答へのお礼

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

すべてを表示した状態で確認する方法があればと考えていたのですが
難しいようですね。 他の方法を考えます。

お礼日時:2014/09/04 13:58

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

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

関連するカテゴリからQ&Aを探す


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