はじめまして。
MS ACCESSわからないことがあるので、皆さんのお知恵をお借りしたく投稿しました。
今タイムカードを作っています。
テーブル
T-社員マスター
ID
名前
T-勤怠データ
社員ID
日付
出勤時間
退勤時間
クエリ
Q-管理&編集
T-勤怠データ 社員ID
T-社員マスター 名前
T-勤怠データ 日付
T-勤怠データ 出勤時間
T-勤怠データ 退勤時間
年 Year([日付])
月 month([日付])
このような感じであり、一覧で見るためのフォームを
非連結テキストボックス 名前 年 月 で作り抽出を行っているのですが
名前・年・月のすべて入力すれば抽出されるのですが、どれか一つでも、条件を入力していなければ何も表示がされないため、これをどれか一つだけ入力した場合は、それに合うデータだけ表示できるように抽出文を書きたいのですが、どのようにすれば抽出できるのかわかりません。
教えていただけると非常に助かります。
よろしくお願いします。
No.4ベストアンサー
- 回答日時:
SQL:
SELECT [T-勤怠データ].社員ID, [T-社員マスター].名前, [T-勤怠データ].日付, [T-勤怠データ].出勤時間, [T-勤怠データ].退勤時間
FROM [T-勤怠データ] LEFT JOIN [T-社員マスター] ON [T-勤怠データ].社員ID = [T-社員マスター].ID
WHERE ((([Forms]![管理&編集用フォーム]![社員名検索]) Is Null Or ([Forms]![管理&編集用フォーム]![社員名検索])=[社員ID]) AND (([Forms]![管理&編集用フォーム]![年検索]) Is Null Or ([Forms]![管理&編集用フォーム]![年検索])=Year([日付])) AND (([Forms]![管理&編集用フォーム]![月検索]) Is Null Or ([Forms]![管理&編集用フォーム]![月検索])=Month([日付])));
VBA:
Option Compare Database
Option Explicit
Private Sub 月検索_AfterUpdate()
Me.Requery
End Sub
Private Sub 社員名検索_AfterUpdate()
Me.Requery
End Sub
Private Sub 年検索_AfterUpdate()
Me.Requery
End Sub
です。
No.3
- 回答日時:
テーブル名のハイフンはまずいでしょ。
あとあと苦労するから
可能なら、アンダーバーに変更。
不可能なら、SQLのテーブル名部分を [] でくくること。
[T-勤怠データ].[日付]
のように。
No.2
- 回答日時:
No.1 です。
フォーム の所は、実際のフォーム名に置き換えてください。
返信ありがとうございます。
フォーム名置き換えも行ってみたのですが、すべての検索ボックスを無記入にした場合、すべてデータが表示され、どれかに入力すると全くデータが検索されず、3つとも入れると狙った結果を出力してくれます。
フォームのボックス名は
社員名検索・・・これは名前ではなくIDで検索しています。
年検索
月検索
なんども、申し訳ないのですが、おかしなところがあれば、教えて頂けると幸いです。
一応WHERE以降は下記のとおりです。
WHERE ((([Forms]![管理&編集用フォーム]![社員名検索]) Is Null Or ([Forms]![管理&編集用フォーム]![社員名検索])=[T-社員マスター].[社員ID]) AND (([Forms]![管理&編集用フォーム]![年検索]) Is Null Or ([Forms]![管理&編集用フォーム]![年検索])=Year([T-勤怠].[日付])) AND (([Forms]![管理&編集用フォーム]![月検索]) Is Null Or ([Forms]![管理&編集用フォーム]![月検索])=Month([T-勤怠].[日付])));
No.1
- 回答日時:
Q-管理&編集:
SELECT T-勤怠データ.社員ID
, T-社員マスター.名前
, T-勤怠データ.日付
, T-勤怠データ.出勤時間
, T-勤怠データ.退勤時間
WHERE (Forms!フォーム!名前.Value IS NULL OR Forms!フォーム!名前.Value=T-社員マスター.名前)
AND (Forms!フォーム!年.Value IS NULL OR Forms!フォーム!年.Value=Year(T-勤怠データ.[日付]))
AND (Forms!フォーム!月.Value IS NULL OR Forms!フォーム!月.Value=Month(T-勤怠データ.[日付]))
みたいな感じ。
試してないけど。
ご回答ありがとうございます。
SQLに入れてみたんですが、僕の理解が悪いのかとうまく動きません。
もう少し色々いじってみたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・14歳の自分に衝撃の事実を告げてください
- ・架空の映画のネタバレレビュー
- ・「お昼の放送」の思い出
- ・昨日見た夢を教えて下さい
- ・ちょっと先の未来クイズ第4問
- ・【大喜利】【投稿~10/21(月)】買ったばかりの自転車を分解してひと言
- ・メモのコツを教えてください!
- ・CDの保有枚数を教えてください
- ・ホテルを選ぶとき、これだけは譲れない条件TOP3は?
- ・家・車以外で、人生で一番奮発した買い物
- ・人生最悪の忘れ物
- ・【コナン30周年】嘘でしょ!?と思った○○周年を教えて【ハルヒ20周年】
- ・ハマっている「お菓子」を教えて!
- ・最近、いつ泣きましたか?
- ・夏が終わったと感じる瞬間って、どんな時?
- ・10秒目をつむったら…
- ・人生のプチ美学を教えてください!!
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・都道府県穴埋めゲーム
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
派遣先での疎外感。
-
職場の飲み会で、ある社員だけ...
-
社員名簿で家族構成書くとこあ...
-
出戻り社員は一番下でしょ?? ...
-
職場で空気のような存在になっ...
-
月1くらいで休む派遣さんが、休...
-
ニコニコしてる人の裏の顔につ...
-
巨乳の同僚
-
平社員の場合の役職名は?
-
派遣社員に直接注意
-
先日、当社のある社員について...
-
社員への残業時間公開について
-
「他」は「た」としか読まない...
-
妻ですが男性と2人だけの出張が...
-
会社の人に勝手にLINE追加され...
-
社員各位という言葉について
-
職場で余り者扱いを受けていて...
-
会社の保養所の不正利用につい...
-
更衣室のドアを常に解放した状...
-
社内での呼び方に困っています。
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
職場で空気のような存在になっ...
-
巨乳の同僚
-
出戻り社員は一番下でしょ?? ...
-
職場の飲み会で、ある社員だけ...
-
平社員の場合の役職名は?
-
派遣先での疎外感。
-
社員への残業時間公開について
-
会社の人に勝手にLINE追加され...
-
派遣社員に直接注意
-
社員各位という言葉について
-
access2021 コンパイルエラーの...
-
悪口を本人に聞かれてしまった
-
月1くらいで休む派遣さんが、休...
-
帰り際になって急に話しかけて...
-
ニコニコしてる人の裏の顔につ...
-
自分にだけタメ口対応をされま...
-
先日、当社のある社員について...
-
若いイケメンには態度を変える...
-
会社の互助会費について
-
妻が会社の男性と仲が良すぎる...
おすすめ情報