vonguyen3745
Thành viên hoạt động



- Tham gia
- 18/7/09
- Bài viết
- 145
- Được thích
- 5
File đính kèm
Lần chỉnh sửa cuối:
Thanks, bác!Thử, kéo qua phải kéo xuống.
G3=IF(LOOKUP(LOOKUP(2,1/($B3=$O$3:$O$143)/($D3=$P$3:$P$143),Q$3:Q$143),0+$J$3:K$7)<E3+0,"x","")
Em kiểm tra phần về sơm không đúng kết quả bác ạ.Cảm ơn, bác!
Bạn đổi dấu < thành dấu > nếu tính Về sớm.Em kiểm tra phần về sơm không đúng kết quả bác ạ.
View attachment 238413
View attachment 238414
View attachment 238415
Ví dụ, GV Dương, thứ 2, 9h35 đã hết giờ, 10h58 mới về mà kết quả vẫn về sớm.
chào bác,bác có thể giúp em giải thích công thức này được không ạ?nhất là chỗ hai chỗ này ạ IF(LOOKUP(LOOKUP(2,1/($B3=$O$3:$O$143)/($D3=$P$3:$P$143),Q$3:Q$143),0+$J$3:K$7)>E3+0,"x",""),tại sao ở đây giá trị cần tìm lại là 2 và phải thêm 0+$J$3:K$7 mà không lấy trược tiếp là $J$3:K$7 ạ?Thử, kéo qua phải kéo xuống.
G3=IF(LOOKUP(LOOKUP(2,1/($B3=$O$3:$O$143)/($D3=$P$3:$P$143),Q$3:Q$143),0+$J$3:K$7)<E3+0,"x","")
Hi em quên vụ đổi dấu.Bạn đổi dấu < thành dấu > nếu tính Về sớm.
Số 2 vì trong vùng điều kiện 1/(...) đều nhỏ hơn 2.chào bác,bác có thể giúp em giải thích công thức này được không ạ?nhất là chỗ hai chỗ này ạ IF(LOOKUP(LOOKUP(2,1/($B3=$O$3:$O$143)/($D3=$P$3:$P$143),Q$3:Q$143),0+$J$3:K$7)>E3+0,"x",""),tại sao ở đây giá trị cần tìm lại là 2 và phải thêm 0+$J$3:K$7 mà không lấy trược tiếp là $J$3:K$7 ạ?
cảm ơn bác,e vẫn hơi lơ mơ chưa rõ lắm ,để e nghiên cứu thêm học hỏi công thức của bác vậySố 2 vì trong vùng điều kiện 1/(...) đều nhỏ hơn 2.
Với 0+$J$3:K$7 là do đó là chuỗi không phải số như bạn thấy.
Cái vụ "0+" chắc là để đổi text thành value á bạn. Thay vì dùng hàm Value thì tui thấy mấy cao nhân hay dùng "0+" hoặc "1*" á. Trước tui cũng thắc mắc giống bạn. Giờ vẫn còn ngờ ngợ nhưng hết thax max rồi, ứng dụng thui.chào bác,bác có thể giúp em giải thích công thức này được không ạ?nhất là chỗ hai chỗ này ạ IF(LOOKUP(LOOKUP(2,1/($B3=$O$3:$O$143)/($D3=$P$3:$P$143),Q$3:Q$143),0+$J$3:K$7)>E3+0,"x",""),tại sao ở đây giá trị cần tìm lại là 2 và phải thêm 0+$J$3:K$7 mà không lấy trược tiếp là $J$3:K$7 ạ?
Cảm ơn bác mở mang kiến thức cho con.Hầu hết những ngôn ngữ làm phép tính đều có phép mặc định ép kiểu.
Điển hình hai kiểu chính là chuỗi và số. Nếu ta dùng phép nối chuỗi để nối hai số thì Excel tự động ép kiểu của số thành chuỗi để nối. Ngược lại, nếu dùng con toán cọng trừ nhânn chi để tínhn chuõi thì Excel tự động ép kiểu của chuỗi thành số để tính toán.
Để ép Excel chuyển chuỗi thành số có ít nhất là 3 cách: dùng phép đổi dấu 2 lần (--), dùng phép nhân cho 1, và dùng phép cộng cho 0.
Hồi nào tới giờ ở đây quen dùng phép chuyển dấu 2 lần (--) để ép Excel đổi chuỗi thành số. Tác giả bài #2 lâu lâu đùa chơi cho nên dùng cách thứ 3 (cộng 0)
Lưu ý: vì phép cộng có ưu tiên khá thấp cho nên dùng cách ép kiểu bằng +0 hơi nguy hiểm.
Theo tôi việc +0 có lẽ nhẹ nhàng nhất vì nó chỉ thực hiện 1 phép tính, còn -- thì phải thực hiện 2 lần mà còn đảo số nữa. Dĩ nhiên là chỉ tôi nghĩ vậy.Cảm ơn bác mở mang kiến thức cho con.
Con mới biết vụ +0 với *1, bác cho con biết thêm chiêu đổi dấu 2 lần (--) nữa, mặc dù con không hiểu tại sao phải dùng phủ định của phủ định chi cho nó phức tạp vậy ạ?
1. phép đổi dấu (complement) là phép tính nội của processor, nó chỉ gồm 1 vế đầu vào; phép cộng phải có hai vế đầu vào, processor phải nạp cả hai vế vào registers(?). Ngày xưa, trước khi có vụ "optimise/ze" con tính thì trên thực tế, đổi dấu hai lần nhanh hơn +0. Processor thực hiện con toán đổi dấu hiệu quả hơn toán cộng nhiều lần. Ngày nay, nhiều con tính được tối ưu hoá cho nên có thể (tôi chỉ nói "có thể" thôi) processor tự động biết +0 thì khỏi cần làm toán.Theo tôi việc +0 có lẽ nhẹ nhàng nhất vì nó chỉ thực hiện 1 phép tính, còn -- thì phải thực hiện 2 lần mà còn đảo số nữa. Dĩ nhiên là chỉ tôi nghĩ vậy.
ừa tui cũng gà mờ nên thắc mặc học hỏi thêmCái vụ "0+" chắc là để đổi text thành value á bạn. Thay vì dùng hàm Value thì tui thấy mấy cao nhân hay dùng "0+" hoặc "1*" á. Trước tui cũng thắc mắc giống bạn. Giờ vẫn còn ngờ ngợ nhưng hết thax max rồi, ứng dụng thui.![]()
vâng,cảm ơn bác đã giải thích thắc mắc,bọn e lại được mở mang thêm để học hỏiHầu hết những ngôn ngữ làm phép tính đều có phép mặc định ép kiểu.
Điển hình hai kiểu chính là chuỗi và số. Nếu ta dùng phép nối chuỗi để nối hai số thì Excel tự động ép kiểu của số thành chuỗi để nối. Ngược lại, nếu dùng con toán cọng trừ nhânn chi để tínhn chuõi thì Excel tự động ép kiểu của chuỗi thành số để tính toán.
Để ép Excel chuyển chuỗi thành số có ít nhất là 3 cách: dùng phép đổi dấu 2 lần (--), dùng phép nhân cho 1, và dùng phép cộng cho 0.
Hồi nào tới giờ ở đây quen dùng phép chuyển dấu 2 lần (--) để ép Excel đổi chuỗi thành số. Tác giả bài #2 lâu lâu đùa chơi cho nên dùng cách thứ 3 (cộng 0)
Lưu ý: vì phép cộng có ưu tiên khá thấp cho nên dùng cách ép kiểu bằng +0 hơi nguy hiểm.