[Hỏi] Tạo tìm kiếm nhiều điều kiện trong Access

Liên hệ QC

namthienquan45

Thành viên mới
Tham gia
20/5/19
Bài viết
3
Được thích
0
Mình mới học Access có vấn đề này nhờ mọi người giúp đỡ.
Mình muốn thiết kế một cái form tìm kiếm nhiều điều kiện thì làm như thế nào nhỉ.

Hình thức là sẽ dùng combobox để chọn điều kiện.
Khi mình chọn đk 1 thì nó tìm ra kết quả và thể hiện ở cái bản bên dưới
Khi mình chọn đk 2 thì nó sẽ thu nhỏ kết quả
Tiếp tục khi mình chọn đk 3,.....
(thấy trên web tìm kiếm văn bản họ hay dùng như thế này nè các bạn)

Cảm ơn mọi người!
 

File đính kèm

  • hoi.jpg
    hoi.jpg
    35.8 KB · Đọc: 15
Cảm ơn bạn đã chỉ giúp. Mà mình là dân mới nên đọc chưa hiểu cái gì hết
Đây là file mình tính làm. Bạn xem thử nhé.
Cảm ơn bạn!
217676
 

File đính kèm

  • QL_HH.rar
    39.6 KB · Đọc: 7
Cảm ơn bạn đã chỉ giúp. Mà mình là dân mới nên đọc chưa hiểu cái gì hết
Đây là file mình tính làm. Bạn xem thử nhé.
Cảm ơn bạn!

Bạn xem file demo đính kèm.
Bạn phải tự học căn bản từ Table, đến query rồi thiết kế các Form đơn giản. Không thể chưa học bò đã lo học chạy được.
Form tìm kiếm nhiều điều kiện không phải dạng Access nhập môn. Bạn có thể thiết kế các form tìm kiếm đơn giản hơn thông qua Query, không cần viết code nhiều.
Tôi chỉ demo lần này và bạn phải tự tìm hiểu, tại sao tôi lại dùng code này, tại sao dùng giải thuật này v.v.. Đoạn đường Access của bạn còn dài lắm, tôi sẽ chỉ hỗ trợ từng phần chứ không làm nguyên cái Form này giùm bạn nữa nhé.
Chúc sự học của bạn sớm đạt kết quả mong muốn.
 

File đính kèm

  • QL_HH.rar
    33.3 KB · Đọc: 29
Bạn xem file demo đính kèm.
Bạn phải tự học căn bản từ Table, đến query rồi thiết kế các Form đơn giản. Không thể chưa học bò đã lo học chạy được.
Form tìm kiếm nhiều điều kiện không phải dạng Access nhập môn. Bạn có thể thiết kế các form tìm kiếm đơn giản hơn thông qua Query, không cần viết code nhiều.
Tôi chỉ demo lần này và bạn phải tự tìm hiểu, tại sao tôi lại dùng code này, tại sao dùng giải thuật này v.v.. Đoạn đường Access của bạn còn dài lắm, tôi sẽ chỉ hỗ trợ từng phần chứ không làm nguyên cái Form này giùm bạn nữa nhé.
Chúc sự học của bạn sớm đạt kết quả mong muốn.
Mình cảm ơn bạn rất nhiều!
Cảm ơn vì những lời chia sẻ của bạn!
 
Bạn xem file demo đính kèm.
Bạn phải tự học căn bản từ Table, đến query rồi thiết kế các Form đơn giản. Không thể chưa học bò đã lo học chạy được.
Form tìm kiếm nhiều điều kiện không phải dạng Access nhập môn. Bạn có thể thiết kế các form tìm kiếm đơn giản hơn thông qua Query, không cần viết code nhiều.
Tôi chỉ demo lần này và bạn phải tự tìm hiểu, tại sao tôi lại dùng code này, tại sao dùng giải thuật này v.v.. Đoạn đường Access của bạn còn dài lắm, tôi sẽ chỉ hỗ trợ từng phần chứ không làm nguyên cái Form này giùm bạn nữa nhé.
Chúc sự học của bạn sớm đạt kết quả mong muốn.
Anh ơi bản hướng dẫn của anh hay quá đúng cái em cần tìm, anh có thể cho em pass giải nén file đc ko ạ ? E rất cảm ơn anh
 
File đã chia sẻ lên đây thì không có pass gì hết nhé bạn.
 
File đã chia sẻ lên đây thì không có pass gì hết nhé bạn.
Anh ơi trong link anh chia sẻ ở trên, ô key word chỉ có thể tìm riêng Last_Name hoặc Given Name. Có cách nào sửa code để nếu e tìm riêng cũng được mà em nối cả Last_Name và Given_Name cũng tìm thấy không ạ ? Em cám ơn anh ạ
 
Bạn xem file demo đính kèm.
Bạn phải tự học căn bản từ Table, đến query rồi thiết kế các Form đơn giản. Không thể chưa học bò đã lo học chạy được.
Form tìm kiếm nhiều điều kiện không phải dạng Access nhập môn. Bạn có thể thiết kế các form tìm kiếm đơn giản hơn thông qua Query, không cần viết code nhiều.
Tôi chỉ demo lần này và bạn phải tự tìm hiểu, tại sao tôi lại dùng code này, tại sao dùng giải thuật này v.v.. Đoạn đường Access của bạn còn dài lắm, tôi sẽ chỉ hỗ trợ từng phần chứ không làm nguyên cái Form này giùm bạn nữa nhé.
Chúc sự học của bạn sớm đạt kết quả mong muốn.
bạn ơi cho mình hỏi dòng " where 1=1 " để làm gì thế, cảm ơn bạn
 
bạn ơi cho mình hỏi dòng " where 1=1 " để làm gì thế, cảm ơn bạn

Đây chỉ là cái thủ thuật tôi dùng để nối chuỗi nhiều điều kiện sau mệnh đề WHERE. 1=1 luôn = True nên câu lệnh SQL có Where 1=1 sẽ luôn chạy trả về toàn bộ record.
Tôi thêm Where 1=1 để có thể nối chuỗi với các điều kiện s1, s2, s3... đi theo sau. Nếu chỉ chọn một điều kiện s2 hoặc s3 không thôi thì câu lệnh SQL vẫn chạy đúng (đúng cú pháp). Nếu không thêm Where 1=1 ở câu lệnh SQL chính (s) thì sẽ phức tạp khi nối các chuỗi s1, s2, s3... còn lại.
Bạn có thể thử bỏ Where 1=1 đi rồi tìm xem có cách nối chuỗi nào khác tiện hơn không.

Screen Shot 2023-04-20 at 11.08.54.png
 
1=1 là True
Hầu hết các cổ máy SQL: có optimizer (tối ưu hóa câu lệnh) sẽ tự động bỏ qua điều kiện này, dẫu không bỏ qua thì việc chạy nó cũng chảng tốn công sức.
Vậy thì nó thêm vào làm gì?

Mục đích của nó là để dễ chỉnh sửa mệnh đề ở điều kiện Where. Nhất là khi viết câu SQL động (SQL tĩnh là một câu viết thẳng một lần, SQL động là một câu có phần sau cứ chắp nối theo phần trước).
Cần thêm gì thì cứ xen vào AND/OR kể từ sau Where 1=1.

Chú thích:
- Cách viết của bài#10 là SQL động. Viết câu chính, sau đó cộng các khúc đuôi.
- Theo đúng thông lệ của SQL động thì câu trên vẫn chưa hoàn hảo. Câu SQL động luốn luôn có một khoảng trắng ở đầu mỗi chuỗi (sau dấu " đầu tiên)
 
Web KT
Back
Top Bottom