-
RE: Hỏi hàm DateDiff
HoangManh > 19-04-17, 01:02 PM
(19-04-17, 12:55 PM)lamvankhanh Đã viết: Bạn có thể làm theo cách này:
Cảm ơn bạn . mình hiểu ý bạn . Nhưng theu cầu mình không đk thêm txt trên from. và mình chỉ cần lấy ra tổng số phút làm thôi. vấn đề mình đang mắc là lấy ra số phút trong trường hợp làm đêm qua ngày hôm sau. là làm bao nhiêu phút
- Trường txtgiobatdau và txtgioketthuc trong Table, thì data type là Date/time và Format là: dd/mm/yyyy hh:nn
- Bạn thêm trường TXTGIO, data type: Date/time không cần Format, và thêm 2 trường sophut và sogio có Format là Number.
- Ở Forms nhập bạn chọn textbox txtgiobatdau và txtgioketthuc với Format là: Short Time và Input mask: 99:99, và 2 trường sophut và sogio có Format: Standard, txtgio thì không cần format,
- Ở txtgiobatdau sự kiện DblClick: Txtgiobatdau = Format(Time(), "HH:MM"), tương tự cho txtgioketthuc
- Lấy giờ, phút và số giờ, số phút:
TXTGIO = Format([txtgioketthuc] - [txtgiobatdau], "HH:MM")
Sophut = Minute([txtgio])
Sogio = Hour([TXTGIO]) -
RE: Hỏi hàm DateDiff
ongke0711 > 19-04-17, 01:10 PM
(19-04-17, 12:31 PM)HoangManh Đã viết:
(19-04-17, 11:58 AM)ongke0711 Đã viết: Sorry quên nói bạn các tham số và cách dùng hàm DateDiff trong ví dụ tôi dùng là dạng DateTime đúng nghĩa chứ không phải dạng Text.
Bây giờ trường hợp của bạn là dùng Text thì bạn phải chuyển thành dạng time (dùng hàm TimeValue()) rồi tính toán.
Vd: TimeValue("23:00 PM") --> 11:00:00 PM
Em cảm ơn anh Nhưng ngừoi Dùng nhập có là giờ không ko có am hay pm. thì sao ạ. Nếu mình muốn cho ngừoi dùng chọn thời gian thì có cách nào để thay đổi định dang ô textbox ko ạ
- Hàm TimeValue vẫn trả về giá trị thời gian nếu bạn không nhập AM/PM nhưng phải nhập giờ dạng 24h. Vd: nhập dạng text:" 23:00" để hiểu là 11h PM.
- "Muốn người dùng chọn thời gian" theo ý bạn tức là có 1 textbox thời gian rồi có nút chọn tăng giảm như hình hay sau?
-
RE: Hỏi hàm DateDiff
HoangManh > 19-04-17, 01:47 PM
(19-04-17, 01:10 PM)ongke0711 Đã viết:
(19-04-17, 12:31 PM)HoangManh Đã viết:
(19-04-17, 11:58 AM)ongke0711 Đã viết: Sorry quên nói bạn các tham số và cách dùng hàm DateDiff trong ví dụ tôi dùng là dạng DateTime đúng nghĩa chứ không phải dạng Text.
Bây giờ trường hợp của bạn là dùng Text thì bạn phải chuyển thành dạng time (dùng hàm TimeValue()) rồi tính toán.
Vd: TimeValue("23:00 PM") --> 11:00:00 PM
Em cảm ơn anh Nhưng ngừoi Dùng nhập có là giờ không ko có am hay pm. thì sao ạ. Nếu mình muốn cho ngừoi dùng chọn thời gian thì có cách nào để thay đổi định dang ô textbox ko ạ
- Hàm TimeValue vẫn trả về giá trị thời gian nếu bạn không nhập AM/PM nhưng phải nhập giờ dạng 24h. Vd: nhập dạng text:" 23:00" để hiểu là 11h PM.
- "Muốn người dùng chọn thời gian" theo ý bạn tức là có 1 textbox thời gian rồi có nút chọn tăng giảm như hình hay sau?
Dạ nếu chọn như trên thì không pahir giải dụ ngừoi dùng có nhập 24 giờ nhưng ví dụ trừong hơm là 23h30 làm đến 1h00 hôm sau thì không tính đựoc kết quả với dateDiff ạ -
RE: Hỏi hàm DateDiff
HoangManh > 19-04-17, 03:06 PM
Cảm ơn anh OngKe em đã giải quyết đựoc vấn đề ạ.Anh làm ơn cho em hỏi hiện tại em đang tập với access.Có một vấn đề em thắc mắc là Cái đề bài lần trước tính 6 tháng mà không đi làm thì ngày vào làm thay đổi ý ạ. hiện em đang làm một cái nhỏ quản lí về ngày vào công ty. giả dụ lấy trong danh sách bang (nhanvien) nhưng người vào làm từ 2016/03 trở về trước. Trong nhưng ngừoi này có anh A đã nghỉ sáu tháng từ 2016/03 đến 2016/09. anh này sẽ đựoc đưa vào một dánh sách mới mới nhanvienngayvaomoi và ngày vào làm là 2016/09.
Tuy nhiên thì cái chưong trình này chạy theo tháng vậy đến thới tới sẽ là nhân viên vào làm trứoc 2016/04.thì khi lấy từ bảng nhân việc thì làm cách nào để lọc bỏ anh A ạ. vì trong bảng nhanvien thi anh a vẫn có ngày vào làm là 2016/03 -
RE: Hỏi hàm DateDiff
tranthanhan1962 > 19-04-17, 08:14 PM
(19-04-17, 03:06 PM)HoangManh Đã viết: Cảm ơn anh OngKe em đã giải quyết đựoc vấn đề ạ.Anh làm ơn cho em hỏi hiện tại em đang tập với access.Có một vấn đề em thắc mắc là Cái đề bài lần trước tính 6 tháng mà không đi làm thì ngày vào làm thay đổi ý ạ. hiện em đang làm một cái nhỏ quản lí về ngày vào công ty. giả dụ lấy trong danh sách bang (nhanvien) nhưng người vào làm từ 2016/03 trở về trước. Trong nhưng ngừoi này có anh A đã nghỉ sáu tháng từ 2016/03 đến 2016/09. anh này sẽ đựoc đưa vào một dánh sách mới mới nhanvienngayvaomoi và ngày vào làm là 2016/09.
Mình không theo dõi chủ đề của bạn từ đầu. Nhưng trong phần này mình có thể hỗ trợ một ý như thế này. Trong danh sách nhân viên bạn tạo một field ngày làm cuối. Mỗi khi chấm công sẽ cập nhật ngày chấm công vào ngày làm cuối vào field này. Trường hợp ngày chấm công nhỏ hơn ngày làm cuối cũ dưới 6 tháng thì chỉ cập nhật ngày chấm công = ngày làm cuối. Trường hợp ngày chấm công nhỏ hơn ngày làm cuối trên 6 tháng thì cập nhật ngày vào làm = ngày chấm công = ngày làm cuối.
Tuy nhiên thì cái chưong trình này chạy theo tháng vậy đến thới tới sẽ là nhân viên vào làm trứoc 2016/04.thì khi lấy từ bảng nhân việc thì làm cách nào để lọc bỏ anh A ạ. vì trong bảng nhanvien thi anh a vẫn có ngày vào làm là 2016/03 -
RE: Hỏi hàm DateDiff
HoangManh > 20-04-17, 07:33 AM
(19-04-17, 08:14 PM)tranthanhan1962 Đã viết:
Em cảm ơn anh ạ. Nhưng vấn đề là em không đựoc sửa danh sách nhân viên ạ. nếu đựoc sửa thì em chỉ cần thêm một trừong kiểm tra là đựoc nhưng không đựoc sửa. giờ có cách nào gọi ra nhân viên mà loại đựoc mã nhân viên ở một bảng khác ko ạ(19-04-17, 03:06 PM)HoangManh Đã viết: Cảm ơn anh OngKe em đã giải quyết đựoc vấn đề ạ.Anh làm ơn cho em hỏi hiện tại em đang tập với access.Có một vấn đề em thắc mắc là Cái đề bài lần trước tính 6 tháng mà không đi làm thì ngày vào làm thay đổi ý ạ. hiện em đang làm một cái nhỏ quản lí về ngày vào công ty. giả dụ lấy trong danh sách bang (nhanvien) nhưng người vào làm từ 2016/03 trở về trước. Trong nhưng ngừoi này có anh A đã nghỉ sáu tháng từ 2016/03 đến 2016/09. anh này sẽ đựoc đưa vào một dánh sách mới mới nhanvienngayvaomoi và ngày vào làm là 2016/09.
Mình không theo dõi chủ đề của bạn từ đầu. Nhưng trong phần này mình có thể hỗ trợ một ý như thế này. Trong danh sách nhân viên bạn tạo một field ngày làm cuối. Mỗi khi chấm công sẽ cập nhật ngày chấm công vào ngày làm cuối vào field này. Trường hợp ngày chấm công nhỏ hơn ngày làm cuối cũ dưới 6 tháng thì chỉ cập nhật ngày chấm công = ngày làm cuối. Trường hợp ngày chấm công nhỏ hơn ngày làm cuối trên 6 tháng thì cập nhật ngày vào làm = ngày chấm công = ngày làm cuối.
Tuy nhiên thì cái chưong trình này chạy theo tháng vậy đến thới tới sẽ là nhân viên vào làm trứoc 2016/04.thì khi lấy từ bảng nhân việc thì làm cách nào để lọc bỏ anh A ạ. vì trong bảng nhanvien thi anh a vẫn có ngày vào làm là 2016/03 -
RE: Hỏi hàm DateDiff
tranthanhan1962 > 20-04-17, 09:38 AM
Sao viết code được mà không thêm trường được -
RE: Hỏi hàm DateDiff
HoangManh > 20-04-17, 09:49 AM
Chia nhau viêt mỗi ngừoi một phần nhả. data chính ví dụ như bảng nhân viên chỉ đựoc xem chưa không đựoc thêm filed hat sửa xóa trên đấy.ạ.Em đã giái quyết bằng cách Dùng một quẻy gọi 2 bảng
End IfMã PHP:nhanvien và nhanvienngayvaolammoi. jon to từ nhan vien sang nhanvienvaolammoi. lấy
If ngayvaolam.nhanvien < ngayvaolam.nhanvienngayvaolammoi then
ngayvaolamall = ngayvaolam.nhanvienngayvaolammoi
else ngayvaolamall = ngayvaolam.nhanvien
.sau đõ gọi nhân viên theo điều kiện tháng nhập vào từ bảng mới đk adpend từ quẻy trên. Hiện tại thì em đã chạy thủ thì không có vẫn đề gì nhưng em cảm thấy có gì đi sai sai. mong đựoc các anh chỉ bảo ạ. -
RE: Hỏi hàm DateDiff
Tamminh252 > 08-10-18, 04:46 PM
Nếu ghi 24:00 thì làm thế nào và tính tổng thời gian thì hàm nào? nhờ mọi người chỉ giúp ạ.