Cần giúp: Nhắc sinh nhật nhân viên ngoài màn hình desktop

Liên hệ QC

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197
Chào mọi người,
Như tiêu đề, mình đang cần "làm" cái nhắc sinh nhật nhân viên công ty mình, khoảng 300 người. Mình có file Excel đầy đủ dữ liệu về họ tên, ngày sinh toàn bộ công ty rồi. Giờ mình muốn ngoài desktop máy tính mình ngày nào cũng hiển thị 7 ngày sắp tới là đến sinh nhật của những ai. Mình có tìm trên diễn đàn GPE thì chỉ thấy những file Excel theo dõi sinh nhật ngay trên file thôi. Mình cũng đã có file dạng ấy.
Tất nhiên dữ liệu trên file Excel thì mình cập nhật thường xuyên cho những biến động nhân sự của công ty.

Mọi người có giải pháp nào không?

Mình có 1 file mẫu xin đính kèm theo dưới đây.
 

File đính kèm

  • Nhac sinh nhat PLX TG.xlsx
    33.9 KB · Đọc: 12

VetMini

Chuyên gia GPE
Tham gia ngày
21 Tháng mười hai 2012
Bài viết
11,763
Được thích
14,896
Công ty mấy trăm người thì dùng MS Exchange chứ sao liên quan gì đến Excel.
Bộ tính cướp nghề bên nhân sự, cho bớt vài người về hưu sớm hay sao.
 

hml89

Thành viên tiêu biểu
Tham gia ngày
14 Tháng chín 2012
Bài viết
506
Được thích
373
Giới tính
Nam

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197

Công ty mấy trăm người thì dùng MS Exchange chứ sao liên quan gì đến Excel.
Bộ tính cướp nghề bên nhân sự, cho bớt vài người về hưu sớm hay sao.
Dạ con chưa hiểu ý bác. Máy tính con không có MS Exchange, mà trước giờ con chưa xài ứng dụng này nữa.

@befaint , @Hoàng Trọng Nghĩa , @thnghiachau : nhờ các bác các anh tổng hợp, đúc kết lại thành 1 bài hướng dẫn hoàn chỉnh giúp em được không ạ? Em thấy mọi người đã trao đổi rất nhiều trong Topic của anh Nghĩa (chia sẻ file Excel theo dõi sinh nhật nhân viên) về cái Combo:
Lập danh sách vào 1 file.txt, viết một đoạn VBScript + task scheduler của Windows là có thông báo tự động.
Em chưa biết về VBScript.

Em cảm ơn nhiều.
 

ptm0412

Bad Excel Member
Thành viên BQT
Super Moderator
Tham gia ngày
4 Tháng mười một 2007
Bài viết
10,963
Được thích
31,690
Giới tính
Nam
Nghề nghiệp
Consultant

Maika8008

Tích cực để lên đời
Tham gia ngày
12 Tháng sáu 2020
Bài viết
1,705
Được thích
1,801
Giới tính
Nam
Dạ con chưa hiểu ý bác. Máy tính con không có MS Exchange, mà trước giờ con chưa xài ứng dụng này nữa.

@befaint , @Hoàng Trọng Nghĩa , @thnghiachau : nhờ các bác các anh tổng hợp, đúc kết lại thành 1 bài hướng dẫn hoàn chỉnh giúp em được không ạ? Em thấy mọi người đã trao đổi rất nhiều trong Topic của anh Nghĩa (chia sẻ file Excel theo dõi sinh nhật nhân viên) về cái Combo:
Lập danh sách vào 1 file.txt, viết một đoạn VBScript + task scheduler của Windows là có thông báo tự động.
Em chưa biết về VBScript.

Em cảm ơn nhiều.
Bạn lấy cái VBScript và danh sách sinh nhật này thử add vào task scheduler xem. Các lỗi về hiển thị tên tiếng Việt hoặc để thông báo trước n ngày thì từ từ tính sau
 

File đính kèm

  • DanhsachSN.txt
    90 bytes · Đọc: 10
  • notify birthday_1.rar
    679 bytes · Đọc: 9

MinhKhai

Giải pháp Ếc-xào
Tham gia ngày
16 Tháng tư 2008
Bài viết
880
Được thích
543
Chào mọi người,
Như tiêu đề, mình đang cần "làm" cái nhắc sinh nhật nhân viên công ty mình, khoảng 300 người. Mình có file Excel đầy đủ dữ liệu về họ tên, ngày sinh toàn bộ công ty rồi. Giờ mình muốn ngoài desktop máy tính mình ngày nào cũng hiển thị 7 ngày sắp tới là đến sinh nhật của những ai. Mình có tìm trên diễn đàn GPE thì chỉ thấy những file Excel theo dõi sinh nhật ngay trên file thôi. Mình cũng đã có file dạng ấy.
Tất nhiên dữ liệu trên file Excel thì mình cập nhật thường xuyên cho những biến động nhân sự của công ty.

Mọi người có giải pháp nào không?

Mình có 1 file mẫu xin đính kèm theo dưới đây.
Cái này dễ thôi. Mình đang dùng 1 cái tương tự.
Bạn muốn xem theo danh sách khi mở ra hay muốn nhắc qua email ?
 

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197
Cái này dễ thôi. Mình đang dùng 1 cái tương tự.
Bạn muốn xem theo danh sách khi mở ra hay muốn nhắc qua email ?
"Mình muốn ngoài desktop máy tính mình ngày nào cũng hiển thị 7 ngày sắp tới là đến sinh nhật của những ai." á bạn.
Chứ mình không "muốn xem theo danh sách khi mở ra hay muốn nhắc qua email".

Mình đang mò làm theo các bác các anh hướng dẫn combo sau:
Lập danh sách vào 1 file.txt, viết một đoạn VBScript + task scheduler của Windows là có thông báo tự động.
 

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197
Bạn lấy cái VBScript và danh sách sinh nhật này thử add vào task scheduler xem. Các lỗi về hiển thị tên tiếng Việt hoặc để thông báo trước n ngày thì từ từ tính sau
Em cho nó chạy thử cái script anh đưa trong Task Sche thì nó hiện thông báo lỗi này nè anh:
1620268137584.png
Em nghĩ là script không tìm được đường dẫn đến file DanhsachSN.txt của anh gửi kèm đúng không? Giờ mình chỉnh lại làm sao anh?
 

Maika8008

Tích cực để lên đời
Tham gia ngày
12 Tháng sáu 2020
Bài viết
1,705
Được thích
1,801
Giới tính
Nam

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197
Dùng Notepad++ sửa cái đường dẫn trong file vbs lại!
À, em sửa đường dẫn được rồi. Giờ nhấn đúp vào file vbs nó hiện thông báo lỗi này nè anh:
1620287951877.png

Nội dung code file vbs của anh đang như vầy:
Mã:
'# Change with your file'
source_file = "C:\Users\trilnq.tg\Documents\GPE\anh Maika\DanhsachSN.txt"

'# Run sub'
notify_birthday(source_file)

Sub notify_birthday(byval file_path)
    Dim obj_fso, text_stream, next_days, ngaythang
    Dim stext, i, str_line
    Set obj_fso   = CreateObject("Scripting.FileSystemObject")
    Set text_stream = obj_fso.OpenTextFile(file_path,,,-2)
    next_days = 0 'Hôm nay là sinh nhật'
    'next_days = 1 'Ngày mai là sinh nhật'
    'next_days = 2 'Ngày kia là sinh nhật'
    stext = "Danh s" & ChrW(225) & "ch sinh nh" & ChrW(7853) & "t ng" & ChrW(224) & "y [" & Date + next_days & "]:"
    Do while not text_stream.AtEndOfStream
        line = text_stream.ReadLine  
        str_line = split(line, vbTab)
        x = Date + next_days
        ngaythang = split(Trim(str_line(1)), "/")
        if ubound(ngaythang) = 2 then
            If ngaythang(0) & "/" & ngaythang(1) = day(x) & "/" & month(x) Then
                i = i + 1
                stext = stext & Chr(10) & i & ". " & str_line(0)
            End If
        End If
    Loop
    Set obj_fso = Nothing
    msgbox stext,, "Th" & ChrW(244) & "ng b" & ChrW(225) & "o sinh nh" & ChrW(7853) & "t"
End Sub

Mà em muốn liệt kê ra 7 ngày sắp tới luôn á anh. Em thấy code mình có ngày mai với ngày mốt hà.
 

huuthang_bd

Chuyên gia GPE
Tham gia ngày
10 Tháng chín 2008
Bài viết
8,155
Được thích
9,601
Giới tính
Nam
Nghề nghiệp
CPA
Mà em muốn liệt kê ra 7 ngày sắp tới luôn á anh. Em thấy code mình có ngày mai với ngày mốt hà.
Thử xem file ở topic này nha bạn
 

ongke0711

Thành viên tích cực
Tham gia ngày
7 Tháng chín 2006
Bài viết
897
Được thích
1,048
Giới tính
Nam
Chỉ sợ rằng một số máy tính bảo mật cao sẽ ngăn không cho chạy Windows Script.
 

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia ngày
30 Tháng sáu 2008
Bài viết
1,328
Được thích
1,197
Thử xem file ở topic này nha bạn
File đã giải quyết được nhu cầu của em và có thể là của cả 1 số thành viên khác.

Cảm ơn anh.
 
Top Bottom