dポイントプレゼントキャンペーン実施中!

アクセスを勉強中ですがいまいちです。
2つの抽出条件に該当するレコードを抽出させたいのですが、やり方がわかりません。
教えてください!

(1)以下のようなテーブルを1枚作成。
職場名、氏名、社員No.、年、月
A-G、本多、012345、2003、10
A-G、鈴木、123456、2003、10
A-G、豊田、234567、2003、10
A-G、本多、012345、2003、11
A-G、鈴木、123456、2003、11
A-G、山羽、934567、2003、11
B-G、夏目、001234、2003、10
B-G、北原、012345、2003、10
B-G、松尾、023456、2003、10
B-G、夏目、001234、2003、11
B-G、北原、012345、2003、11
B-G、松尾、023456、2003、11
C-G、榎本、777012、2003、10
C-G、板垣、770123、2003、10
C-G、伊藤、701234、2003、10
C-G、豊田、234567、2003、11
C-G、板垣、770123、2003、11
C-G、伊藤、701234、2003、11

(2)検索フォームと結果表示フォームの2つを作成
a.結果表示フォーム
 bで検索した結果を表示するフォーム(単票形式で個々の情報が表示される)

b.検索フォーム
 「職場」「日付」のコンボボックスと「検索」ボタンを設置。

要は、検索フォームで2つの条件(職場,日付)に合致した情報をaで表示させたい!!
ですが今のところ、"職場"だけは条件通り出てくるのですが、日付が条件として読み取ってくれません。
わかるかたがいましたら、教えて頂きたいです。

A 回答 (4件)

う~ん。


検索の表示とテーブルのデータ構造が違うのが気になるなぁ。っていうか、めんどくさい仕様だな。

手っ取り早く言うと、
stLinkCriteria = "[所属名称]=" & "'" & Me![所属名称] & "'"
に#2の方が言われている'And'でつなげた条件式を追加すればよいのです。
これが、フォームaに表示されるデータの検索式そのものだからです。
具体的に言うと、
stLinkCriteria = "[所属名称]='" & Me![所属名称] & "' And [年]=" & Me![年] & " And [月]=" & Me![月]
というようにします。
ただし、フォームbには[年][月]というオブジェクトがないようなので、このままではエラーになります。
フォームbに[年][月]というテキストボックスを作って、「cmb日付」の更新後処理(AfterUpdate)で[年][月]にデータを入れるようにコードを書いてやればOKです。

この類の処理は、ヘルプでSQLという項目をご覧になると、最初はチンプンカンプンですが、だんだんわかってきます。
また、日付はデータ形式を日付にした方が、いろいろと処理が楽になります。何日後とか何か月前とか。
ただ、検索条件のときはリテラル文字列という形式にしなければならないので、ちょっと面倒です。
    • good
    • 0
この回答へのお礼

御礼が大変遅くなり、申し訳ございませんでした。
未だに"マクロ"は大きな壁ですが、この問題に関しては、なんとかなりました。ありがとうございました!!

お礼日時:2003/12/03 11:40

yomo3氏、ありがとうございます。



 日付については、日付コントロールフィールドにしてもいいかもしれませんね。
 そうすれば、等号不等号も使えるので。
    • good
    • 0

ボタンのコードのところに、



if [テーブルの職場名]=[職場コンボボックス名] and [テーブルの日付フィールド]=[日付コンボボックス名] then
・・・

のように and で繋げばどうでしょうか?
    • good
    • 0
この回答へのお礼

回答ありがとうございました。
ですが、まだマクロを使いこなせず、省略部分のコードをどう書いていいかわかりません。なんとなく、雰囲気はわかるのですが。
(可能であれば、教えて頂きたいと....)
このコード、研究してみます。

お礼日時:2003/11/28 13:27

恐らく、日付の書式が間違っているのだと思います。



テーブルの年と月のデータ形式はどのようになっていますか?数値ですか?

bの「日付」の形式はどのようになってますか?

検索の具体的な方法は?SQLですか?
コードなどできるだけ詳しく補足してください。

この回答への補足

はぃ、確かに日付の書式、自信ありません。。。

テーブルの年と月のデータ形式は数値です。
bの「日付」の形式は、数値型と言えるのでしょうか・・・
以下はcmb日付の詳細です。
--------------
■cmb日付に表示するデータとしてテーブル「年月」を以下のように作成し、コンボボックスを作った
 A列  B列 ---いづれも数値型
【年】 【月】
 2003  10 
 2003  11
 2003  12
 2004  1
 2004  2 
 2004  3

■cmb日付プロパティ
値集合タイプ:テーブル/クエリー
値集合ソース:SELECT DISTINCTROW 年月.年, 年月.月 FROM T_全体 INNER JOIN 年月 ON (T_全体.月 = 年月.月) AND (T_全体.年 = 年月.年);
連結列:2
※値集合ソースは、SQLで「データベース」テーブルの"年"と「年月」テーブルの"年"を繋げ、「データベース」テーブルの"月"と「年月」テーブルの"月"を繋げました。

■検索ボタンのイベントプロシージャー
Private Sub コマンド14_Click()
On Error GoTo Err_コマンド14_Click

Dim stDocName As String
Dim stLinkCriteria As String

stDocName = "F_全体"

stLinkCriteria = "[所属名称]=" & "'" & Me![所属名称] & "'"

DoCmd.OpenForm stDocName, , , stLinkCriteria

Exit_コマンド14_Click:
Exit Sub

Err_コマンド14_Click:
MsgBox Err.Description
Resume Exit_コマンド14_Click

End Sub

以上ですが、いかがでしょうか?
おわかり頂けましたでしょうか?
すみませんが、宜しくお願い致します。

補足日時:2003/11/28 12:37
    • good
    • 0

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