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

Blue Softs epl Liên hệ QC

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
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: 15

VetMini

Chuyên gia GPE
Tham gia
21/12/12
Bài viết
12,583
Được thích
16,307
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.
 

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.

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
4/11/07
Bài viết
11,689
Được thích
32,777
Donate (Momo)
Donate
Giới tính
Nam
Nghề nghiệp
Consultant

Maika8008

Thành viên gắn bó
Tham gia
12/6/20
Bài viết
2,685
Được thích
2,977
Donate (Momo)
Donate
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: 12
  • notify birthday_1.rar
    679 bytes · Đọc: 11

MinhKhai

Giải pháp Ếc-xào
Tham gia
16/4/08
Bài viết
885
Được thích
546
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
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
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
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
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

Thành viên gắn bó
Tham gia
12/6/20
Bài viết
2,685
Được thích
2,977
Donate (Momo)
Donate
Giới tính
Nam

xuongrongdat

Có bao giờ bạn tự hỏi "Tôi là ai?"
Tham gia
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
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
10/9/08
Bài viết
8,231
Được thích
9,734
Donate (Momo)
Donate
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
7/9/06
Bài viết
1,097
Được thích
1,315
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
30/6/08
Bài viết
1,504
Được thích
1,397
Donate (Momo)
Donate
Nghề nghiệp
Vô tư cùng bạn bè đi khắp nơi.
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.
 
Web KT
Top Bottom