プロが教えるわが家の防犯対策術!

Accessの自己流で使っているものです。

販売管理のデータベースを作ったのですが、
主なフィールドは、
仕入先、商品名、販売日、担当者、販売方法などです。

担当者、販売方法でフィルタをかけ、他の項目を入力の作業をしたい状況です。

そこでですが、フィルタのかける条件として、
担当者=山田、販売方法=A、B以外のもの、というかけ方をしたいのですが、
その設定の方法がわかりません。

試した例では、
[担当者]=[Forms]![販売管理]![検索_担当者] or [販売方法]=not "A" or [販売方法]=not "B"
でやりましたが、できませんでした。

AとBをの抽出は、以下でできました。
[販売方法]="A" Or [販売方法]="B"

ただ、A,B以外の抽出方法が分からず、さらに当該担当者を加えてのやり方もわかりません。

どうすればできるのか、宜しくお願いいたします。

A 回答 (4件)

ウーン1!



どういう種類のテーブルなのか?????
仕入伝票でもなし、商品マスターでもなし・・・。

ウーン2!

抽出条件とフォームの入力フィールドが同じ!
それじゃユーザは操作に困るだろうに!

ということで、最低、フォームヘッダーに
[担当者一覧][販売方法一覧]が配置されているとして・・・。

ウーン3!

>担当者、販売方法でフィルタをかけ、他の項目を入力とは?

新規レコードの担当者、販売方法の初期値を設定するという意味?
それとも、未入力レコードを予め発生させておくつもり?
後者は、ないだろう!
不具合レコードをどんどん発生させることになる・・・。

と、ここまで書いて回答は保留することにしました。
回答しても、どうせ・・・と思います。

*ウーン3つを解消するのが先決かもです!
    • good
    • 0

もう少し、論理演算の勉強をなさることをお勧めします。


まず論理テーブルを書いてみることです。
P  Q   P Or Q
○  ○   ○
○  ×   ○
×  ○   ○
×  ×   ×

P  Q   P And Q
○  ○   ○
○  ×   ×
×  ○   ×
×  ×   ×

要素が「山田」「A」「B」と3つあるので、組み合わせは2の3乗=8通りです。
  山田 A  B  質問文の条件式(全てORで連結)での結果
1. ○  ○  ○  該当  山田が○だから、ABの値はどうでもいい
2. ○  ○  ×  該当  山田が○だから、ABの値はどうでもいい
3. ○  ×  ○  該当  山田が○だから、ABの値はどうでもいい
4. ○  ×  ×  該当  山田が○だから、ABの値はどうでもいい
5. ×  ○  ○  非該当 山田が×、AB共に○だから条件に当てはまらない
6. ×  ○  ×  該当  山田が×だが、Bが×だから
7. ×  ×  ○  該当  山田が×だが、Aが×だから
8. ×  ×  ×  該当  山田が×だが、AB共に×だから
となり、質問者さんの条件式では「5」以外の全てに該当してしまいます。
ここで、質問者さんが得たい検索結果は「4」の場合ですから
(担当者=山田) And (販売方法 <>A) And (販売方法 <>B)と
全てANDでつながなければなりません。
    • good
    • 0

> 担当者=山田、販売方法=A、B以外のもの



これは、「担当者が山田で、販売方法がAでもなくBでもないもの」
という意味でよろしいでしょうか。

でしたら、No.2の方の回答にもある通り、「Or」ではなく「And」で
結合させる、つまり、

[担当者]=[Forms]![販売管理]![検索_担当者] And [販売方法]<> "A" And [販売方法]<> "B"

としてやる必要があります。
(又は、「<>」を「= Not」で置き換えるか、以下の式でも可;
 [担当者]=[Forms]![販売管理]![検索_担当者] And Not [販売方法]="A" And Not [販売方法]="B"
 通常は「<>」を使うのではないかと思います。
 但し、私も自己流なので、両者が完全に互換なのかは
 わかりませんが・・・)


なお、Accessのフォームビューで、連結コントロール(=レコード
データが表示される、テキストボックス等のコントロール)を
右クリックすると、表示されるメニューに、「フィルタの対象(F)」
という選択肢が現れると思います。
その右の入力欄に検索条件(「Not A」等)を入れて絞り込みを
実行した後、フォームのプロパティシートで「データ」タブを
選択すると、「フィルタ」欄に現在のフィルタ式が表示されます。

私は、この方法を使ってフィルタ式の概要を覚えましたので、
参考までに。
    • good
    • 0

試した例では、


[担当者]=[Forms]![販売管理]![検索_担当者] or [販売方法]=not "A" or [販売方法]=not "B"

↑て、クエリに設定してますよね?
[担当者]=[Forms]![販売管理]![検索_担当者]
はいいとして、
[販売方法]=<>"A" and <>"B"
で実現しませんか?
    • good
    • 0

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

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