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,820
nhìn cái hàm này mà thấy nó phức tạp quá để mình thử xem nào
 
Upvote 0
chúc anh em of Giaiphapexcel luôn mạnh khỏe, thành công và hạnh phúc
 
Lần chỉnh sửa cuối:
Upvote 0
Trong sheet "Mailinfo" mình có để cột C, bạn muốn gởi mail tới người nào thì đặt địa chỉ mail người đó vào tương ứng, chú ý phải mở Outlook lên trước khi gởi mail nha.

Mình gởi lại file vì có người chạy bị lỗi vì 1 biến chưa khai báo.

chào.

Bác Thnghiachau ơi trước hết em rất cảm ơn file Play Roll -... của bác nó rất ngon bổ và lại free nữa. nhưng em có 1 mong muốn là: các số khi ở trong bảng Excel thì có dấu phân cách hàng đơn vị nhưng khi gửi vào mail thì không còn nữa điều này làm người nhận lương không rễ nhìn cho lắm. Vậy nếu có thể bác nghiên cứu thêm xem có cách ghì khắc phục không giúp em với.
Đầu xuân năm mới chúc bác và gia đình, chúc anh em of Giaiphapexcel luôn mạnh khỏe, thành công và hạnh phúc
 
Upvote 0
Sub SendMail()
Dim OutApp As Object
Dim OutMail As Object
Dim cell As Range
Dim Addresslist As Scripting.Dictionary
Application.ScreenUpdating = False
Set Addresslist = New Scripting.Dictionary
Set OutApp = CreateObject("Outlook.Application")
OutApp.Session.Logon

For Each cell In Columns("B").Cells.SpecialCells(xlCellTypeConstants)
If cell.Value Like "?*@?*.?*" And _
LCase(Cells(cell.Row, "J").Value) = "yes" Then
On Error Resume Next
Addresslist.Add cell.Value, cell.Value
If Err.Number = 0 Then
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = cell.Value
.Subject = "Phieu luong: " & Cells(cell.Row, "A").Value
.Body = "Dear " & Cells(cell.Row, "A").Value _
& vbNewLine & vbNewLine & _
"Xin vui long xem chi tiet bang luong nhu ben duoi:" & _
vbNewLine & vbNewLine & _
"+ He So Chuc Danh: " & Cells(cell.Row, "C").Value & _
vbNewLine & _
"+ So ngay cong: " & Cells(cell.Row, "D").Value & _
vbNewLine & _
"+ Luong CD: " & Cells(cell.Row, "E").Value & _
vbNewLine & _
"+ Phu cap DT: " & Cells(cell.Row, "F").Value & _
vbNewLine & _
"+ Phu cap doan the: " & Cells(cell.Row, "G").Value & _
vbNewLine & _
"+ Tru BHXH, BHYT: " & Cells(cell.Row, "H").Value & _
vbNewLine & _
"+ Luong CK: " & Cells(cell.Row, "I").Value & _
vbNewLine & vbNewLine & _
"Cam on"
.Display 'Or use Send
End With
Set OutMail = Nothing
End If
On Error GoTo 0
End If
Next cell

Set OutApp = Nothing
Set Addresslist = Nothing
Application.ScreenUpdating = True
End Sub

Ai giúp em giải thích code này với :D Em gửi thử toàn báo lỗi 404 - you don't connected!
 
Upvote 0
Gửi Bác Hai Lúa Miền Tây và các thành viên của diễn đàn

Nhờ các bác làm cái file gửi tự đông theo trường hợp này với, theo bảng Exel đính kèm

- lọc các dòng, cột theo Mã CN(cột B tại sheet File tổng) bao gồm cả tiêu đề và phần ghi chú ở cuối bảng VD nếu Có 2 mã CN trùng nhau thì lấy cả 2 mã
- Mỗi một mã CN (cột B) (gồm tất cả các dòng có mã CN giống nhau) thì Attact thành 1 file excel
- Tự động gửi mail tới các địa chỉ email tương ứng với Mã CN đó (được nêu tại Sheet1)
- Phần subject thì lấy tại dòng E4 (sheet 1)
- Phần nội dung lấy tại E5 (sheet1)

Các Bác giúp e với nhé, ko tuần nào em cũng dùng tay mà lên tới khoảng 400 Đại lý của Cty --> die khẩn cấp +-+-+-+
 

File đính kèm

  • Mau gui mai tu dong.xlsx
    14.2 KB · Đọc: 61
Lần chỉnh sửa cuối:
Upvote 0
Cả nhà ơi em ko biết làm mã code cả nhà làm ơn làm hộ em cái gửi lương theo biểu phiếu lương kia của em có được không ạ ! em cảm ơn cả nhà
 
Lần chỉnh sửa cuối:
Upvote 0
Anh chị giúp em với, mẫu của công ty bên em
Xếp đang yêu cầu gửi đề nghị chi hộ đến npp theo 2 địa chỉ email.
Trong sheet "chi hộ" chỉ cần gõ số thứ tự của npp đó thì tự động nhảy các số liệu của npp
Anh Hai Lúa Miền Tây ơi giúp em với
 

File đính kèm

  • De nghi chi ho.xlsx
    49.6 KB · Đọc: 10
Upvote 0
Cám ơn bạn đã up code rất giá trị.
làm phiền bạn cho tôi hỏi: tôi muốn copy 2 dòng tiêu đề thì làm sao hả bạn. (Mong bạn giúp đỡ)
 
Upvote 0
các bạn code hay quá. Có thể nào chỉ mình cụ thể không. Mình không rành lắm . Nhưng mà rất cần. Mong các anh chị giúp đỡ. Bước đầu tiên là làm như thế nào . Rùi nó ra được file excel như z.
Thanks all
 
Upvote 0
Ko contact được với bác Hai Lúa Miền Tây :(
 
Upvote 0
Mình muốn copy bảng trong excel paste vào phần nội dung mail thì làm sao nhỉ? Mình record macro thì ko được.
 
Upvote 0
Upvote 0
Tôi nhớ đã có làm rồi trong những bài trước trong đề tài này, bạn chịu khó tìm lại giúp nhé.
Cảm ơn thầy, đã tìm được nhưng em chưa hiểu phần này
Mã:
 With MailItem                   
                   ...
                   .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
Cho em hỏi câu lệnh nào đưa phần khung bảng vào?
 
Upvote 0
Cảm ơn thầy, đã tìm được nhưng em chưa hiểu phần này
Mã:
 With MailItem                   
                   ...
                   .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
Cho em hỏi câu lệnh nào đưa phần khung bảng vào?
Bạn vào trang http://www.giaiphapexcel.com/forum/...-trợ-nhập-tiếng-việt-(Font-Unicode)-trong-VBA để tìm hiểu về hàm chuyển đổi font.
Về khung đưa vào trong trình soạn thảo email, bạn cố tìm trong đề tài này nhé. Nó sẽ có cái cho bạn cần.
 
Upvote 0
Vậy nếu gửi mail mà có kèm file thì làm thế nào hả anh?
 
Upvote 0
Có cách nào gởi mail mà tạo thêm cc cho nhiều người nữa không nhỉ? Anh có thể tạo ra giúp em được ko
 
Upvote 0
Anh chị cho mình hỏi trường hợp sau

Em thấy code của bác HaiLua #124 Trang 13

Sub SendMail() Dim OutlookApp As Object, MailItem As Object, rng As Range, WB As Workbook
Application.DisplayAlerts = False
With Sheet1
For Each rng In .[A1: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 "C:\BangLuong", , rng.Offset(, 10)
Set OutlookApp = CreateObject("Outlook.Application")
Set MailItem = OutlookApp.CreateItem(0)
With MailItem
.To = rng.Offset(, 4)
.Subject = "Bang luong cua: " & rng.Offset(, 4)
.Attachments.Add WB.FullName
.HTMLBody = " <B>Xin chao " & rng.Offset(, 5) & "</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>"
.Send
End With
WB.Close
End If
Next
.ShowAllData
End With
Application.DisplayAlerts = True
Set OutlookApp = Nothing
Set MailItem = Nothing

End Sub

E đã làm thành công nhưng cho em hỏi muốn khi gửi đi sẽ có thêm 1 sheet là định dạng phiếu lương, dùng sẵn hàm vlookup bên sheet2 qua sheet1 để ra dữ liệu. Vì nhiều khi nhân viên muốn in ra theo định dạng.
Anh chị xem giúp
 
Lần chỉnh sửa cuối:
Upvote 0
Web KT
Back
Top Bottom