Gửi email tính lương cho từng người

Liên hệ QC

zine

Thành viên mới
Tham gia
21/8/07
Bài viết
27
Được thích
13
Hi các anh chị
Em có bảng tính lương cho tất cả CBCNV trong công ty
Bây giờ em muốn sau khi tính lương, gửi cách tính lương chi tiết của từng người cho người đó qua email.(thông tin lương của người nào, chỉ người đó biết)
Em gửi kèm file, mọi người có cách gì giúp em nhé, đa tạ.
 

File đính kèm

  • Gui email tu dong theo danh sach.xlsx
    13.2 KB · Đọc: 2,821
E cảm ơn a nhìu nhìu ạ.
A HLMT fix giúp em

2 dong chi tiet bang luong em gõ tiếng việt nó không hiển thị đúng anh ạ
em không biết mã tiếng việt. anh giúp em với, em cảm ơn anh

Bạn xem như sau nhé

Mã:
.HTMLBody = "<B>Xin cha" & ChrW(768) & "o " & Ash.Range("B" & Rnum) & ",</B><BR>" & _
                           "Xin vui lo" & ChrW(768) & "ng xem chi tiê" & ChrW(769) & "t ba" & ChrW(777) & "ng l" & ChrW(432) & ChrW(417) & "ng nh" & ChrW(432) & " bên d" & ChrW(432) & ChrW(417) & ChrW(769) & "i:<BR><BR>" & _
                                "<table border=1><tr>" & _
                                strHeader & _
                                "</tr><tr>" & _
                                strRow & _
                                "</tr>" & _
                                "</table>" & _
                                "<BR>" & _
                            "Nê" & ChrW(769) & "u thâ" & ChrW(769) & "y co" & ChrW(769) & " gi" & ChrW(768) & " th" & ChrW(259) & ChrW(769) & "c m" & ChrW(259) & ChrW(769) & "c xin vui lo" & ChrW(768) & "ng pha" & ChrW(777) & "n hô" & ChrW(768) & "i s" & ChrW(417) & ChrW(769) & "m.<BR>" & _
                            "<B>Xin ca" & ChrW(777) & "m " & ChrW(417) & "n,</B>" & _
                            "<BR>"
 
Upvote 0
Bạn xem như sau nhé

Mã:
.HTMLBody = "<B>Xin cha" & ChrW(768) & "o " & Ash.Range("B" & Rnum) & ",</B><BR>" & _
                           "Xin vui lo" & ChrW(768) & "ng xem chi tiê" & ChrW(769) & "t ba" & ChrW(777) & "ng l" & ChrW(432) & ChrW(417) & "ng nh" & ChrW(432) & " bên d" & ChrW(432) & ChrW(417) & ChrW(769) & "i:<BR><BR>" & _
                                "<table border=1><tr>" & _
                                strHeader & _
                                "</tr><tr>" & _
                                strRow & _
                                "</tr>" & _
                                "</table>" & _
                                "<BR>" & _
                            "Nê" & ChrW(769) & "u thâ" & ChrW(769) & "y co" & ChrW(769) & " gi" & ChrW(768) & " th" & ChrW(259) & ChrW(769) & "c m" & ChrW(259) & ChrW(769) & "c xin vui lo" & ChrW(768) & "ng pha" & ChrW(777) & "n hô" & ChrW(768) & "i s" & ChrW(417) & ChrW(769) & "m.<BR>" & _
                            "<B>Xin ca" & ChrW(777) & "m " & ChrW(417) & "n,</B>" & _
                            "<BR>"
ANH HLMT ơi, anh xem giúp em với
em muốn hiển thị header của dòng 1 và 2 sau đó mới tham chiếu dòng nhân viên thì phải lam tn ạ?
luong lam them gio
chiu thuekhong chiu thue
123121313

em muốn cố định hiển thị 2 hàng như thế này ạ.
Bt là đang hiện thị hàng 1, hang 2 trở đi là danh sanh va luong cua nhân viên
giờ em muốn hang 3 trở đi mới là danh sách nhân viên ạ
 
Upvote 0
ANH HLMT ơi, anh xem giúp em với
em muốn hiển thị header của dòng 1 và 2 sau đó mới tham chiếu dòng nhân viên thì phải lam tn ạ?
em muốn cố định hiển thị 2 hàng như thế này ạ.
Bt là đang hiện thị hàng 1, hang 2 trở đi là danh sanh va luong cua nhân viên
giờ em muốn hang 3 trở đi mới là danh sách nhân viên ạ
Bạn gửi file hướng dẫn kết quả lên xem thử nhé.
 
Upvote 0
Bác Hai Lúa Miền Tây và các bác khác giúp em file này với:

Em có nhu cầu gửi đến từng người trong file mỗi người 1 email có đính kèm thông báo lương.

- Cột em muốn lấy từ A1 đến AB, sau này có thể mở rộng thêm, em lấy từ A1 vì em muốn có hàng chữ Thông báo lương tháng xxx trong file đính kèm gửi đi
- Format trong file đính kèm gửi đi em muốn giữ nguyên như trong file tính lương, vì bên em không cho thay đổi.
- Địa chi mail tương ứng của mỗi người em để cột cuối cùng.
- Còn cái khác như Filter các bác thấy không cần có thể bỏ luôn cũng được.
 

File đính kèm

  • Thong bao luong 2014.xls
    84 KB · Đọc: 34
Upvote 0
Dạ em mới tham gia lĩnh vực tiền lương nên còn gà mờ lắm. Cả nhà cho em hỏi, nếu em muốn sử dụng địa chỉ mail khác để gởi bảng lương, không phải outlook thì có phải em phải sửa lại dòng code sau không ạ?

Set OutlookApp = CreateObject("Outlook.Application")
Set MailItem = OutlookApp.CreateItem(0)

Nếu em muốn gởi bằng địa chỉ Gmail thì phải làm sao ạ?

Cảm ơn rất nhiều
 
Upvote 0
HLMT cho hỏi
mình đã chạy code ở #27 mọi thứ ok, nhưng nếu người A xuất hiện từ 2 lần trở lên (2 hàng) thì mail sẽ gửi số lượng đúng bằng số lần xuất hiện trong dữ liệu. Vậy có cách nào mà chỉ gửi 1 mail với nội dung gồm tiêu đề và các dòng ở dưới luôn

Mong câu trả lời

Em cũng có thắc mắc giống bạn này.

Set FilterRange = Ash.Range("A1:H" & Ash.Rows.Count)
FieldNum = 1

Em nghĩ đoạn code này làm được việc filter này nhưng mà e không biết đưa nó vào đâu hết, chắc là do em chưa hiểu được cấu trúc làm việc của nó là như thế nào.

Mọi người giúp e xem file với nhé!
Thanks!
 

File đính kèm

  • fileluong1.xlsm
    37.5 KB · Đọc: 16
Upvote 0
e đang muốn gửi mail với nội dung như file word, còn dữ liệu trong file excel.
E muốn lọc theo tên công ty và gửi mail cho họ (địa chỉ email ở Sheet 2) với nội dung mail có bảng dữ liệu và thông tin highlight.
Mọi người giúp em với!
 

File đính kèm

  • loc va gui mail.xlsx
    12.8 KB · Đọc: 19
  • noi dung gui mail.docx
    12.2 KB · Đọc: 17
Upvote 0
Kính gửi anh Hai Lúa Miền Tây và các anh chị,

Em đã chạy file của anh Hai Lúa Miền Tây nhưng trong máy của em khong có Outlook, em đang sử dụng Windows Mail. Em nhờ anh Hai Lúa Miền Tây và các anh chị chỉ giúp xem có thể sử dụng được Windows Mail thay vì Outlook có được không ạ?

Em xin cám ơn!
 
Upvote 0
Kính gửi anh Hai Lúa Miền Tây và các anh chị,

Em đã chạy file của anh Hai Lúa Miền Tây nhưng trong máy của em khong có Outlook, em đang sử dụng Windows Mail. Em nhờ anh Hai Lúa Miền Tây và các anh chị chỉ giúp xem có thể sử dụng được Windows Mail thay vì Outlook có được không ạ?

Em xin cám ơn!

Bạn phải dùng Outlook nhé, code trên chỉ dùng cho outlook.
 
Upvote 0
e đang muốn gửi mail với nội dung như file word, còn dữ liệu trong file excel.
E muốn lọc theo tên công ty và gửi mail cho họ (địa chỉ email ở Sheet 2) với nội dung mail có bảng dữ liệu và thông tin highlight.
Mọi người giúp em với!

Bạn chạy code bên dưới nhé, lưu ý là phần email và tên công ty phải là duy nhất.

Mã:
Sub SendMail()
    Dim OutlookApp As Object, MailItem As Object, rng As Range
    Application.DisplayAlerts = False
    With Sheet1
        For Each rng In .[K2:K10]
            If Len(rng) > 0 Then
                .[A1:B100].AutoFilter Field:=1, Criteria1:=rng
               .[A1].CurrentRegion.CopyPicture
                Set OutlookApp = CreateObject("Outlook.Application")
                Set MailItem = OutlookApp.CreateItem(0)
                With MailItem
                   .To = rng.Offset(, 1)
                   .Subject = ChrW(272) & ChrW(7873) & " ngh" & ChrW(7883) & " g" & ChrW(7917) & "i thông tin cho tàu ch" & ChrW(7841) & _
                                    "y ngày : " & Sheet1.[E2] & " : th" & ChrW(7901) & "i h" & ChrW(7841) & "n g" & ChrW(7917) & "i: " & Sheet1.[F2]
                   .HTMLBody = " <B>Xin chao " & rng & "</B>" & _
                                "<BR>" & ChrW(272) & ChrW(7873) & " ngh" & ChrW(7883) & " g" & ChrW(7917) & "i thông tin cho tàu ch" & ChrW(7841) & _
                                          "y ngày : " & Sheet1.[E2] & " : th" & ChrW(7901) & "i h" & ChrW(7841) & "n g" & ChrW(7917) & "i: " & Sheet1.[F2] & " v" & ChrW(7899) & _
                                          "i thông tin chi ti" & ChrW(7871) & "t nh" & ChrW(432) & " sau:<BR>" & _
                                 "<BR><BR>Neu co thac mac gi xin phan hoi som" & _
                                "<BR><B>Xin cam on,</B><BR>" & _
                                "<BR><B>HLMT</B>"
                   .Display
                End With
                SendKeys "({DOWN})", True
                SendKeys "({DOWN})", True
                SendKeys "({DOWN})", True
                SendKeys "^({v})", True
            End If
        Next
        .ShowAllData
    End With
    Application.DisplayAlerts = True
    Set OutlookApp = Nothing
    Set MailItem = Nothing
   
End Sub
 

File đính kèm

  • loc va gui mail.xlsm
    22.1 KB · Đọc: 129
Upvote 0
Em cảm ơn anh Hai Lúa Miền Tây về file gửi thông tin lương qua e-mail rất hữu ích và sự nhiệt tình hướng dẫn mọi người của anh!
 
Upvote 0
Bạn chạy code bên dưới nhé, lưu ý là phần email và tên công ty phải là duy nhất.

Mã:
Sub SendMail()
    Dim OutlookApp As Object, MailItem As Object, rng As Range
    Application.DisplayAlerts = False
    With Sheet1
        For Each rng In .[K2:K10]
            If Len(rng) > 0 Then
                .[A1:B100].AutoFilter Field:=1, Criteria1:=rng
               .[A1].CurrentRegion.CopyPicture
                Set OutlookApp = CreateObject("Outlook.Application")
                Set MailItem = OutlookApp.CreateItem(0)
                With MailItem
                   .To = rng.Offset(, 1)
                   .Subject = ChrW(272) & ChrW(7873) & " ngh" & ChrW(7883) & " g" & ChrW(7917) & "i thông tin cho tàu ch" & ChrW(7841) & _
                                    "y ngày : " & Sheet1.[E2] & " : th" & ChrW(7901) & "i h" & ChrW(7841) & "n g" & ChrW(7917) & "i: " & Sheet1.[F2]
                   .HTMLBody = " <B>Xin chao " & rng & "</B>" & _
                                "<BR>" & ChrW(272) & ChrW(7873) & " ngh" & ChrW(7883) & " g" & ChrW(7917) & "i thông tin cho tàu ch" & ChrW(7841) & _
                                          "y ngày : " & Sheet1.[E2] & " : th" & ChrW(7901) & "i h" & ChrW(7841) & "n g" & ChrW(7917) & "i: " & Sheet1.[F2] & " v" & ChrW(7899) & _
                                          "i thông tin chi ti" & ChrW(7871) & "t nh" & ChrW(432) & " sau:<BR>" & _
                                 "<BR><BR>Neu co thac mac gi xin phan hoi som" & _
                                "<BR><B>Xin cam on,</B><BR>" & _
                                "<BR><B>HLMT</B>"
                   .Display
                End With
                SendKeys "({DOWN})", True
                SendKeys "({DOWN})", True
                SendKeys "({DOWN})", True
                SendKeys "^({v})", True
            End If
        Next
        .ShowAllData
    End With
    Application.DisplayAlerts = True
    Set OutlookApp = Nothing
    Set MailItem = Nothing
   
End Sub

a HLMT ơi, e chạy macro thi phần lọc thông tin cột bkg chưa đúg, cty A ko lọc được ra 3 bkg khác nhau,còn phần công ty C lại ra 3 bkg giống nhau, a xem lại giùm em với!
 
Upvote 0
Upvote 0
Nhờ anh Hai Lúa Miền Tây và các anh chị giúp em làm thế nào để sau khi gửi e-mail đính kèm bảng lương cho mọi người thì máy tự động xóa e-mail đã gửi trong Send Items và Delete Items.
Em cám ơn!
 
Upvote 0
Dear cả nhà mình

Mình có 1 file đặt phòng khách sạn nhưng khi gửi thì mail k hiện chữ ký mình đã set.
Vì thế mình tìm được đoạn code để có thể hiện được cả chữ ký nhưng mình k biết phải kết hợp 2 code này như thế nào.
Ngoài ra mình muốn chuyển font chữ thành Times New Roman nhưng cũng chưa biết phải làm thế nào.
Nhờ mọi người giúp mình nhé.
Cảm ơn cả nhà nhiều
Đoạn code mình tìm đc đây à:
Sub Mail_Outlook_With_Signature_Html_1()
' Working in Office 2000-2013
Dim OutApp As Object
Dim OutMail As Object
Dim strbody As String

Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)

strbody = "p style='font-family:calibri;font-size:16.5'" & "Dear " & Range("D74") & "," (HTML tags not included)

On Error Resume Next

With OutMail
.Display
.To = Range("H74")
.CC = ""
.BCC = ""
.Subject = ""
.HTMLBody = strbody & .HTMLBody
.Display
End With

On Error GoTo 0
Set OutMail = Nothing
Set OutApp = Nothing
End Sub
 

File đính kèm

  • Hotel Booking Update.xlsm
    28 KB · Đọc: 21
Upvote 0
tôi thấy chữ ký bình thường mà, font thì phải chỉnh trong outlook thôi.
 
Upvote 0
Phần chỉnh font mình làm được rồi. Còn phần chữ ký đó là mình tạo sẵn trong code bạn ah. Nếu không tạo sẵn trong code thì khi gửi mail sẽ không có phần chữ ký. Vì vậy mình tìm được đoạn code trên để khi nào gửi mail là nó tự động lấy chữ ký mà đã tạo sẵn ở outlook rồi ý
 
Upvote 0
Code không chạy khi chuyển từ Office 2007 sang Office 2010

Bạn chạy code sau nhé

Mã:
Sub SendMail()
    Dim OutlookApp As Object, MailItem As Object, rng As Range, WB As Workbook
    Application.DisplayAlerts = False
    With Sheet1
        For Each rng In .[A2:A100]
            If Len(rng) > 0 Then
                .[A1:A100].AutoFilter Field:=1, Criteria1:=rng
                .[a1].CurrentRegion.Copy
                Workbooks.Add
                Set WB = ActiveWorkbook
                ActiveSheet.Paste
                WB.SaveAs "D:\BangLuong", , rng.Offset(, 5)
                Set OutlookApp = CreateObject("Outlook.Application")
                Set MailItem = OutlookApp.CreateItem(0)
                With MailItem
                   .To = rng.Offset(, 4)
                   .Subject = "Bang luong cua: " & rng.Offset(, 1)
                   .Attachments.Add WB.FullName
                   .HTMLBody = " <B>Xin chao " & rng.Offset(, 1) & "</B>" & _
                                "<BR><BR>Vui long xem file dinh kem<BR>" & _
                                "<BR>Neu co thac mac gi xin phan hoi som" & _
                                "<BR><B>Xin cam on,</B><BR>" & _
                                "<BR><B>HLMT</B>"
                   .Display
                End With
                WB.Close
            End If
        Next
        .ShowAllData
    End With
    Application.DisplayAlerts = True
    Set OutlookApp = Nothing
    Set MailItem = Nothing
   
End Sub
Gửi anh Hai Lúa Miền Tây,
Em đã chạy code này trong Office 2007 rất ok rồi. Nhưng sau đó em chuyển sang Office 2010 thì code bị lỗi. Cứ đến dòng WB.SaveAs "D:\BangLuong", , rng.Offset(, 5) thì treo. Em gửi file kèm theo anh xem giúp em nhé. Cảm ơn anh rất nhiều.
 

File đính kèm

  • Mau gui thong bao luong-2014.xls
    53.5 KB · Đọc: 52
Upvote 0
Web KT

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

Back
Top Bottom