Nhờ giúp về nhắc nhở công việc sau khoảng thời gian chọn trước (1 người xem)

Liên hệ QC

Người dùng đang xem chủ đề này

pinklove

Thành viên thường trực
Tham gia
21/1/08
Bài viết
336
Được thích
42
Tôi muốn tạo một file nhắc nhở công việc (tôi đã tạo form ở file đính kèm) với yêu cầu là: Khi khởi động lên nó chỉ hiện form. Tôi sẽ nhập nội dung công việc, sau đó chọn nhắc nhở sau bao nhiêu phút tính từ thời điểm nhập (ngay sau khi ấn OK). Dữ liệu sẽ được nhập vào sheet DATA. Lần sau nhập sẽ nhập vào hàng tiếp theo. Với nút xóa toàn bộ dữ liệu tôi có thể xóa hết tất cả để nhập lại từ đầu.
Khi đến thời gian đã chọn sẽ hiện lên cảnh báo (dạng như Msgbox) để nhắc nhở.

Việc này rất cần thiết đối với công việc của tôi vì có những việc quy định phải hoàn thành trong thời gian cho phép, nếu quên vượt quá sẽ bị phạt nên rất mong sớm nhận được sự giúp đỡ của các anh em trong GPE. Xin chân thành cảm ơn.
 
Lần chỉnh sửa cuối:
Tôi muốn tạo một file nhắc nhở công việc (tôi đã tạo form ở file đính kèm) với yêu cầu là: Khi khởi động lên nó chỉ hiện form. Tôi sẽ nhập nội dung công việc, sau đó chọn nhắc nhở sau bao nhiêu phút tính từ thời điểm nhập (ngay sau khi ấn OK). Dữ liệu sẽ được nhập vào sheet DATA. Lần sau nhập sẽ nhập vào hàng tiếp theo. Với nút xóa toàn bộ dữ liệu tôi có thể xóa hết tất cả để nhập lại từ đầu.
Khi đến thời gian đã chọn sẽ hiện lên cảnh báo (dạng như Msgbox) để nhắc nhở.

Việc này rất cần thiết đối với công việc của tôi vì có những việc quy định phải hoàn thành trong thời gian cho phép, nếu quên vượt quá sẽ bị phạt nên rất mong sớm nhận được sự giúp đỡ của các anh em trong GPE. Xin chân thành cảm ơn.
Tôi thấy bài viết của bạn cũng nhiều mà lệnh Application.OnTime bạn không nghiên cứu được. Lần này bạn tự nghiên cứu nghe.
 

File đính kèm

Upvote 0
Tôi thấy bài viết của bạn cũng nhiều mà lệnh Application.OnTime bạn không nghiên cứu được. Lần này bạn tự nghiên cứu nghe.
Nếu bạn có đọc những bài viết của tôi thì bạn đều thấy tôi đi hỏi là chủ yếu chứ có viết code được đâu. Qua nhiều lần hỏi thì cũng mượn code người này người kia xào xáo thành một số file mình cần được. Tôi cũng đã tìm hiểu trên diễn đàn ko có bài nào theo đúng yêu cầu tôi mới phải đi hỏi. Chứ nếu có tôi cũng đã cố gắng tìm tòi để sửa cho mình rồi. Đâu ai thích đi hỏi nhiều làm gì.
Còn vấn đề bạn trách ko làm nút show form thì quả thực tôi chưa làm với form lần nào nên ko biết. Cái form tôi vẽ ra đó cũng copy từ file bạn khác rồi sửa theo ý mình cần chứ tôi cũng chưa tự tạo được. Trong sheet data tôi để trống vì tôi ko biết dạng bài này thì dữ liệu cần lưu gồm những gì. Có cân cột phụ ko. Thực ra nó chỉ để lưu nội dung và giờ nên tôi nghĩ ko cần tiêu đề vì chỉ làm việc trêb form sau đó hiện msgbox. Sau đó lại clean.
dù sao cũng cảm ơn những góp ý của bạn để tôi có thể tốt hơn. Hi vọng bạn hiểu và hõ trợ tôi.
 
Upvote 0
Vài lời góp ý:

1. Bạn đã từng được giúp code => có hiểu code và có chỉnh sửa được. => có kinh nghiệm viết bài trên GPE
2. Mà bây giờ bạn lập đề tài nhờ giúp mà nửa vời???
+ Tạo cái Form xong, cũng không làm cái Button để show ra sẵn (hiểu & tạo được Form thì tất nhiên có hiểu về User Form & tạo cái Sub gán vào Button để show form là điều đương nhiên.). Chả nhẻ người xem phải Alt+F11 vào User Form mà xem Form của bạn tạo có cái giống gì trong đó ah?
+ Nội dung trên topic thì lưu vào sheet Data, trong khi sheet Data thì 1 Trang trắng, chẳng có tiều đề cột dòng. ==> Lưu vào đâu??? Cứ như cưỡi ngựa xem hoa vậy?

Nói túm lại, với bài của hỏi của mình mà hỏi & trình bày 1 cách vô trách nhiệm đối với bản thân mình như vậy thì chắc còn lâu mới được giúp!

Vài lời góp ý, có gì không phải bỏ qua nha!


Mày mò mãi đền giờ mới tạo được cái nút bấm load Form. Có tìm hiểu thêm nhưng thật sự là khả năng chỉ mới đến đó chẳng giải quyết được gì hơn. Tôi gửi lại file nhờ các bạn giúp dùm code với yêu cầu như sau:
- ở cột "Giờ bắt đầu" sẽ lấy giờ hiện tại ngay khi nhập
- "Giờ kết thúc" = "giờ bắt đầu" + "số phút được nhập ở form" (Sau bao nhiêu phút)
Khi đến giờ kết thúc thì sẽ đưa ra cảnh báo. Có thể là MsgBox hoặc load một useForm với nội dung "Chú ý: đến thời gian của ...." với dấu 3 chấm là nội dung được nhập vào. Cái nào cũng được miễn là khi đó dù đang làm việc gì trên PC thì nó vẫn hiện lên cho biết.
- Khi bấm OK sẽ nhập dữ liệu vào và được tiếp tục nhập thêm dữ liệu mới.
- Lúc khởi động load UseForm, hide bảng tính "Nhac nho cong viec" nhưng cac bảng tính khác vẫn làm việc bình thường.
Mong nhận được sự hỗ trợ của các bạn. Nếu vẫn còn gì chưa tốt mong được bỏ qua. Xin cảm ơn!
 

File đính kèm

Upvote 0
Vì chưa ai giúp nên tôi đang tự mày mò. Nhưng đến đoạn này bị bí nhờ mọi người tư vấn giúp:
Tôi muốn hỏi hàm nào để cộng thêm một số phút vào thời gian cho trước.
VD:
B2 = 2:25:42 PM
C2 = 90
D2 = Thời gian ở B2 + số phút ở C2.

Tôi tìm được hàm NOW()+90*(1/24/60) để cộng từ thời gian hiện tại nhưng không sửa được để nó lấy giá trị từ ô B2. Mong nhận được sự tư vấn ở các bạn.
 
Upvote 0
////// hay quá mà em không biết làm, nào có cho em xem với hjhjjj
 
Upvote 0
Vì chưa ai giúp nên tôi đang tự mày mò. Nhưng đến đoạn này bị bí nhờ mọi người tư vấn giúp:
Tôi muốn hỏi hàm nào để cộng thêm một số phút vào thời gian cho trước.
VD:
B2 = 2:25:42 PM
C2 = 90
D2 = Thời gian ở B2 + số phút ở C2.

Tôi tìm được hàm NOW()+90*(1/24/60) để cộng từ thời gian hiện tại nhưng không sửa được để nó lấy giá trị từ ô B2. Mong nhận được sự tư vấn ở các bạn.
Bạn dùng lệnh này thử xem:
NOW()+Range("C2").Value*(1/24/60)
 
Upvote 0
Bạn dùng lệnh này thử xem:
NOW()+Range("C2").Value*(1/24/60)
Ý của tôi là thời gian bắt đầu tính không phải thời điểm hiện tại mà là thời gian được đặt ở ô B2 bạn ạ. Nếu dùng Now() thì nó tính từ thời điểm hiện tại. Nhưng nếu thế thì khi tôi thêm một công việc vào hàng phía dưới thì thời gian đó sẽ bị sửa lại vào thời điểm mới tác động chứ không theo thời gian công việc cũ.

Với lại công thức của bạn ở trên nó cứ báo lỗi chỗ Value
 
Lần chỉnh sửa cuối:
Upvote 0
Ý của tôi là thời gian bắt đầu tính không phải thời điểm hiện tại mà là thời gian được đặt ở ô B2 bạn ạ. Nếu dùng Now() thì nó tính từ thời điểm hiện tại. Nhưng nếu thế thì khi tôi thêm một công việc vào hàng phía dưới thì thời gian đó sẽ bị sửa lại vào thời điểm mới tác động chứ không theo thời gian công việc cũ. Bạn có thể xem file kèm theo để hiểu ý tôi hơn.
Tại ô D2 bạn gõ công thức như sau:
Mã:
=TIME(HOUR(B2),MINUTE(B2),SECOND(B2))+C2*(1/24/60)
 
Upvote 0
Tại ô D2 bạn gõ công thức như sau:
Mã:
=TIME(HOUR(B2),MINUTE(B2),SECOND(B2))+C2*(1/24/60)
Ồ được rồi, trước đó tôi có thử với công thức
Mã:
=TIME(HOUR(B2),MINUTE(B2)+C2*(1/24/60),SECOND(B2))
Tôi cứ nghĩ cộng thêm phút thì phải cộng vào MINUTE chứ quên mất là phải lấy tất cả cộng với ô C2. Giờ ngồi nghiên cứu tiếp cái Application.Ontime. Mò từ chiều giờ chưa ra kết quả như mong muốn. Sẽ cố gắng đến lúc không được nhờ bạn hỗ trợ với nhé.
 
Lần chỉnh sửa cuối:
Upvote 0
Đến thời điểm này thì bó tay thật sự. Tôi có tìm được cái code nhưng chẳng hiểu vì sao nó không chạy. Bỏ riêng vào 1 file test code thì lúc chạy lúc không. Mấy hôm nay cũng loay hoay đọc, sửa đủ cách rồi mà chẳng được. Rất mong nhận được sự hỗ trợ của các bạn.
 

File đính kèm

Upvote 0
Có bạn nào giúp tôi với ạ. Thật sự rất cần cái này mà bí quá rồi.
 
Upvote 0
Đến thời điểm này thì bó tay thật sự. Tôi có tìm được cái code nhưng chẳng hiểu vì sao nó không chạy. Bỏ riêng vào 1 file test code thì lúc chạy lúc không. Mấy hôm nay cũng loay hoay đọc, sửa đủ cách rồi mà chẳng được. Rất mong nhận được sự hỗ trợ của các bạn.
Mục đích của bạn là gì thì nói rõ ra để giúp một lần cho xong, chứ bạn cứ hỏi trả lời xong lại phát sinh cái khác chỉ hoài không được đâu. Mình thấy file của bạn có ghi 2 dòng có phải ý bạn muốn đến giờ đó thì nhắc việc đúng không? hay là gì? nêu ra cụ thể đi.
 
Upvote 0
Mục đích của bạn là gì thì nói rõ ra để giúp một lần cho xong, chứ bạn cứ hỏi trả lời xong lại phát sinh cái khác chỉ hoài không được đâu. Mình thấy file của bạn có ghi 2 dòng có phải ý bạn muốn đến giờ đó thì nhắc việc đúng không? hay là gì? nêu ra cụ thể đi.
Đúng đó bạn. Mục đích của mình là với form nhập liệu, khi mình nhập số liệu vào thì sẽ có ngày giờ từng việc cụ thể ở cột D. Mình muốn đến giờ của việc nào thì sẽ hiện lên nhắc nhở của việc đó. Trong file có 2 dòng nhưng thực tế mỗi ngày có thể có đến khoảng vài chục việc cần phải được nhắc bạn ạ. File này mình chỉ sử dụng trong ngày thôi.
 
Upvote 0
Bài này cũng khá hay và loằng nhoằng.
Giả sử có n công việc cần cảnh báo tại thời điểm t nào đó.
Khi bắt đầu khởi chạy (tính thời gian nhắc nhở), duyệt qua trong các thời điểm t, thời điểm t(i) nào gần với thời điểm hiện tại (now) nhất thì cho vào Application.Ontime.
Tới đúng thời điểm t(i) thì hiện thông báo. Tắt thông báo đó đi (có thể cho tự động tắt sau vài giây gì đó) thì lại quay lại duyệt xem t(i) nào gần hiện tại nhất...
Chóng mặt -+*/-+*/
 
Upvote 0
Đúng đó bạn. Mục đích của mình là với form nhập liệu, khi mình nhập số liệu vào thì sẽ có ngày giờ từng việc cụ thể ở cột D. Mình muốn đến giờ của việc nào thì sẽ hiện lên nhắc nhở của việc đó. Trong file có 2 dòng nhưng thực tế mỗi ngày có thể có đến khoảng vài chục việc cần phải được nhắc bạn ạ. File này mình chỉ sử dụng trong ngày thôi.
Điều kiện thời gian phải theo thứ tự tăng dần (Cho dễ khỏi phải tìm kiếm nhọc nhằng), thời gian định dạng giờ:phút:giây. Bạn xem đúng như yêu cầu của bạn chưa.
 

File đính kèm

Upvote 0
Điều kiện thời gian phải theo thứ tự tăng dần (Cho dễ khỏi phải tìm kiếm nhọc nhằng), thời gian định dạng giờ:phút:giây. Bạn xem đúng như yêu cầu của bạn chưa.

Phần cảnh báo đúng giờ thì được rồi bạn ạ. Nhưng có một vấn đề, đó là đến cảnh báo nào thì nó cảnh báo luôn cả những công việc sau đó chứ không chỉ riêng mình nó. Nhờ bạn xem lại.
 
Upvote 0
Web KT

Bài viết mới nhất

Back
Top Bottom