jason > 13-01-16, 09:18 AM
tranthanhan1962 > 13-01-16, 05:39 PM
jason > 13-01-16, 07:03 PM
tranthanhan1962 > 13-01-16, 08:41 PM
(13-01-16, 07:03 PM)jason Đã viết:(13-01-16, 05:39 PM)tranthanhan1962 Đã viết: Bạn đưa điều kiện này vào criteria của field ngày trong query:cảm ơn anh !
Between #10/01/2015# And #01/30/2016#
nhưng chẳng nhẻ khi bước qua tháng 2 mình lại phải vào query sửa lại .
mong anh giúp e cách khác với
jason > 14-01-16, 09:29 AM
(13-01-16, 08:41 PM)tranthanhan1962 Đã viết: Bạn có thể thay thế bằng Between [Từ Ngày] And [Đến Ngày] Khi chạy query thì điền giá trị ngày vào Input box. Bạn cũng có thể tạo form và các textbox Từ ngày, Đến ngày và viết code để khi gọi query xử lý theo điều kiện của textbox trên form.
Chúc bạn thành công.
tranthanhan1962 > 14-01-16, 11:00 AM
(14-01-16, 09:29 AM)jason Đã viết: cảm ơn anh một lần nữa !Mình chưa nắm được yêu cầu cụ thể của bạn. Nhưng theo như bạn nói. Nếu điều kiện cố định luôn luôn là 4 tháng gần nhất bạn có thể sử dụng criteria sau:
nhưng vẫn chưa đúng với trường hợp của em .
thật ra em có 2 table đều có dữ liệu sẵn của nhiều năm, em đã liên kết 2 table lại bằng 1 query append ( ở đây em muốn lọc 4 tháng gần nhất và đẩy qua 1 table khác để em làm dữ liệu nguồn)
nhưng em vẫn chưa tìm được cách, cách của anh là phải nhập giá trị vào mới thực thi được .
em suy nghỉ là phải viết công thức hoặc hàm trong query để tự động hiểu được 4 tháng gần nhất.
anh trót giúp em cái nữa nhen hj
jason > 14-01-16, 11:30 AM
(14-01-16, 11:00 AM)tranthanhan1962 Đã viết:thật xin lỗi anh !(14-01-16, 09:29 AM)jason Đã viết: cảm ơn anh một lần nữa !Mình chưa nắm được yêu cầu cụ thể của bạn. Nhưng theo như bạn nói. Nếu điều kiện cố định luôn luôn là 4 tháng gần nhất bạn có thể sử dụng criteria sau:
nhưng vẫn chưa đúng với trường hợp của em .
thật ra em có 2 table đều có dữ liệu sẵn của nhiều năm, em đã liên kết 2 table lại bằng 1 query append ( ở đây em muốn lọc 4 tháng gần nhất và đẩy qua 1 table khác để em làm dữ liệu nguồn)
nhưng em vẫn chưa tìm được cách, cách của anh là phải nhập giá trị vào mới thực thi được .
em suy nghỉ là phải viết công thức hoặc hàm trong query để tự động hiểu được 4 tháng gần nhất.
anh trót giúp em cái nữa nhen hj
>=DateSerial(Year(Date());Month(Date())-4;1)
Có nghĩa là lớn hơn hoặc bằng ngày 1 của tháng hiện tại - 4. Thực ra điều kiện Between [Từ Ngày] And [Đến Ngày] vẫn cơ động hơn vì bạn có quyền đưa ra yêu cầu tùy thích!
tranthanhan1962 > 14-01-16, 09:37 PM
(14-01-16, 11:30 AM)jason Đã viết: thật xin lỗi anh !Bạn có thể tạo thêm trong query một field ngày: plandate: DateSerial(Year([planyear]);Month([planmonth]);1). Rồi đưa điều kiện vào criteria của field này. Kiểu dữ liệu của bạn plandate:[planmonth]&"/"&[planyear] là kiểu text chứ không phải là kiểu date nên khi chạy query sẽ bị báo lỗi.
em cho thiếu thông tin rồi, em có 2 cột 1 cột là chỉ tháng(planmonth) thôi và 1 cột là năm(planyear)
vậy em có thể sử dụng cách trên của anh được không ? em thử gọp thành plandate:[planmonth]&"/"&[planyear] rồi sử dụng >=DateSerial(Year(Date());Month(Date())-4;1) ở criteria nhưng không được
hic
jason > 15-01-16, 11:34 AM
(14-01-16, 09:37 PM)tranthanhan1962 Đã viết:(14-01-16, 11:30 AM)jason Đã viết: thật xin lỗi anh !Bạn có thể tạo thêm trong query một field ngày: plandate: DateSerial(Year([planyear]);Month([planmonth]);1). Rồi đưa điều kiện vào criteria của field này. Kiểu dữ liệu của bạn plandate:[planmonth]&"/"&[planyear] là kiểu text chứ không phải là kiểu date nên khi chạy query sẽ bị báo lỗi.
em cho thiếu thông tin rồi, em có 2 cột 1 cột là chỉ tháng(planmonth) thôi và 1 cột là năm(planyear)
vậy em có thể sử dụng cách trên của anh được không ? em thử gọp thành plandate:[planmonth]&"/"&[planyear] rồi sử dụng >=DateSerial(Year(Date());Month(Date())-4;1) ở criteria nhưng không được
hic
tranthanhan1962 > 15-01-16, 12:11 PM
(15-01-16, 11:34 AM)jason Đã viết:Sorry. Công thức mình thiết đặt bị sai một tí bạn điều chỉnh lại plandate: DateSerial([planyear];[planmonth];1)(14-01-16, 09:37 PM)tranthanhan1962 Đã viết:(14-01-16, 11:30 AM)jason Đã viết: thật xin lỗi anh !Bạn có thể tạo thêm trong query một field ngày: plandate: DateSerial(Year([planyear]);Month([planmonth]);1). Rồi đưa điều kiện vào criteria của field này. Kiểu dữ liệu của bạn plandate:[planmonth]&"/"&[planyear] là kiểu text chứ không phải là kiểu date nên khi chạy query sẽ bị báo lỗi.
em cho thiếu thông tin rồi, em có 2 cột 1 cột là chỉ tháng(planmonth) thôi và 1 cột là năm(planyear)
vậy em có thể sử dụng cách trên của anh được không ? em thử gọp thành plandate:[planmonth]&"/"&[planyear] rồi sử dụng >=DateSerial(Year(Date());Month(Date())-4;1) ở criteria nhưng không được
hic
phát sinh 2 vấn đề :
1. khi em thêm field plandate: DateSerial(Year([planyear]);Month([planmonth]);1) như anh hướng dẫn thì field cho kết quả không được so với 2 field planmonth và planyear
VD: phanmonth có dử liệu : 1,2,3,...12 và planyear có : 2010,2011,...2016 khi làm cách trên thì plandate chỉ có 2 giá trị ngày 1/1/1905 và 1/12/1905. kết quả chính xác thì từ nằm 2010 -> 2016 mới đúng.
2. khi em thêm >=DateSerial(Year(Date());Month(Date())-4;1) ở criteria ở field plandate thì báo lỗi: " data type mismatch in criteria expression"
anh xem lại giúp em với
cảm ơn anh nhiều