dragon18081988
Thành viên mới

- Tham gia
- 4/6/12
- Bài viết
- 9
- Được thích
- 0
Cảm ơn anh ạ!Hình như bạn muốn tách file và gởi mail cho từng người. Nếu đúng thì sử dụng file này. Lưu ý là giải nén và lưu file vào máy tính trước khi chạy thử. File này sau khi gởi mail sẽ xóa hết những file mới tạo. Cột tên phải nằm ở cột B, và cột địa chỉ mail phải nằm ở cột cuối. Những cột giữa có thể thêm hoặc giảm. Nếu muốn thay đổi gì thì bàn tiếp.
Thân
Dạ đây ạ, ví dụ em có cái file như thế này ạ, và em cũng muốn làm giống file anh gửi thì e phải làm thế nào ạ, số người lên tới 50 - 100 người thì phải làm sao ạGởi file lên đi, gởi cái hình không hình dung được đâu.
dạ ko, ý em là cái file này em cũng muốn làm giống file của a thì phải làm thế nào, e cũng dung cái cái cột chỉ mail rồi nhưng không được, nó cứ báo lỗi 1004, e không hiểu lắmFile của bạn không có cột đia chỉ email
Vâng. File của em nó như thế này ạ:Cấu trúc file khác nhau đâu có dùng chung được, nếu cần thì gởi file thật lên mọi người sẽ xem cho bạn
Dạ e muốn gửi sheet1, cột địa chỉ mail thì ở cột cuối cùng,gửi tất cả hàng và cột chứa tên người giống như bảng excel mà anh post lên đó ạ, mỗi người nhận hàng chứa tên mình và không nhận hàng chứa tên người khácfile bạn gởi có 2 sheet, vậy gởi sheet nào? và gởi những hàng nào? cột địa chỉ email ở đâu?
cảm ơn anh rất nhiều, format này của em sẽ không đổi, nhưng nếu em thếm số dòng thì vẫn dùng đc đúng ko ạ. Vì số lượng người em cần gửi thư lên tới 50 người tức là phải có 50 dòng như thế này nữa. Nếu em thêm vào cái file a gửi thì vẫn dùng đc chứ ạLàm theo format của file bạn, nếu sửa format lại thì coi chừng không chạy đấy
Em gửi lại file, anh xem giúp em nha. Em cũng thấy điều này nhưng em không biết là sẽ ảnh hưởng đến code và em suy nghĩ em sẽ thêm danh hiệu sau.Em nên up file hoàn chỉnh tí, vì cột tên người nhận thiếu dữ liệu thì so với những cột khác.
Em nên thêm 1 cột Mr, Ms hay là Mrs .... Gởi file chuẩn sẽ không mất thời gian sửa lại code
File lưu trong máy em, đường dẫn làFile muốn gởi kèm tên gì? File lưu ở đâu?
Sub Goimail()
Dim OutApp As Object
Dim OutMail As Object
Dim FileName As String, cell As Range
Application.ScreenUpdating = 0
Application.DisplayAlerts = False
Set OutApp = CreateObject("Outlook.Application")
For Each cell In Range([H5], [H5].End(4))
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = cell.Offset(, 3)
.Subject = "THONG TIN CHU DE CAN GOI" 'nhap noi dung chu de vao giua 2 dau nhay
.Body = "Dear " & cell & vbNewLine & vbNewLine & "dong 1" & vbNewLine & vbNewLine _
& "dong 2" & vbNewLine & vbNewLine _
& "dong 3" & vbNewLine & vbNewLine _
& "dong 4" & vbNewLine & vbNewLine _
& "dong 5" & vbNewLine & vbNewLine _
& "Tran Trong"
.Attachments.Add "D:\NGUYEN VU\TAI LIEU TIEP KHACH\NGUYEN VU\INTRODUCTION.pptx"
.Display 'neu muon goi luon thi thay chu Display la Send nhe
End With
Next
Application.ScreenUpdating = 1
End Sub
Em sửa đoạn code lại như sau:Em xem file coi đúng chưa, chỉ ngại cái chỗ đường dẫn và tên file của em thôi
Mã:Sub Goimail() .... End Sub
Cám ơn anh đã bỏ thời gian giúp đỡ em. Cái file đính kèm không chạy được đâu anh. Chỗ nào anh ghi hướng dẫn, em xoá đi và còn lại giữ y nguyên đó anh quanghai1969. Em muốn gửi tới tất cả mọi người với nội dung sau anh nha.Cài file đính kèm có chạy được không? Nếu không chạy được mới sửa chứ. Không hiểu em đã làm gì mà giờ ra được code này.
Sub Goimail()
Dim OutApp As Object
Dim OutMail As Object
Dim FileName As String, cell As Range
Application.ScreenUpdating = 0
Application.DisplayAlerts = False
Set OutApp = CreateObject("Outlook.Application")
For Each cell In Range([H5], [H5].End(4))
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = cell.Offset(, 3)
.Subject = "VICTOR WOOD INTRODUCTION"
.Body = "Dear " & cell & vbNewLine & vbNewLine & "I am Nhung from Victor Wood company. " _
& "Nice to contact you" & vbNewLine _
& "We welcome you as a new customer to our commercial business. " _
& vbNewLine & vbNewLine _
& "Tran Trong"
'.Attachments.Add "D:\NGUYEN VU\TAI LIEU TIEP KHACH\NGUYEN VU\INTRODUCTION.pptx"
.Display
End With
Next
Application.ScreenUpdating = 1
End Sub
Mình chỉ làm mẫu cho bạn vài dòng, coi theo đó mà sáng tạo thêm cho phù hợp thực tế. Chú ý cách xuống dòng phải theo đúng nguyên tắc nghen, nếu không sẽ bị lỗi
PHP:Sub Goimail() Dim OutApp As Object ... Application.ScreenUpdating = 1 End Sub
Sub Goimail()
Dim OutApp As Object
Dim OutMail As Object
Dim FileName As String, cell As Range
Application.ScreenUpdating = 0
Application.DisplayAlerts = False
Set OutApp = CreateObject("Outlook.Application")
For Each cell In Range([H5], [H5].End(4))
OutApp.Session.Logon
Set OutMail = OutApp.CreateItem(0)
With OutMail
.To = cell.Offset(, 3)
.Subject = "VICTOR WOOD INTRODUCTION"
.Body = "Dear " & cell & vbNewLine & vbNewLine _
& "I am Nhung from Victor Wood company. It's my pleasure to contact you." & vbNewLine & vbNewLine _
& "We'd like to welcome you as a new customer to our commercial business. " & vbNewLine & vbNewLine _
& "We are quite sure that you will be extremely satisfied with our line of products " & vbNewLine & vbNewLine _
& "and the service we provide to all our customers." & vbNewLine & vbNewLine _
& "Hope that we will have a good business relationship in the nearest future. " & vbNewLine & vbNewLine _
& "By the way, in order to help you have more information about our factory, " & vbNewLine & vbNewLine _
& "we have enclosed the Presentation file for your information and reference. " & vbNewLine & vbNewLine _
& "If you have the time, we always welcome you to visit our factory at the address: " & vbNewLine & vbNewLine _
& "Chon Thành Industrial Zone, Thành Tâm Ward, Chon Thành District, Bình Phuoc Province, Vietnam." & vbNewLine & vbNewLine _
& "We are looking forward to your reply soon. " & vbNewLine & vbNewLine _
& "If you have any queries, pls do not hesitate to contact us." & vbNewLine & vbNewLine & vbNewLine _
& "Best Regards" & vbNewLine _
& "Nhung (Ms)"
.Display 'neu muon goi luon thi thay chu Display la Send nhe
End With
Next
Application.ScreenUpdating = 1
End Sub
Em cám ơn anh nhiều. Em muốn hỏi em sẽ xoá dòng "neu muon goi luon thi thay chu Display la Send nhe" đi phải không anh quanghai1969?Đã nhập hết nội dung vào trong code, nhưng phải kiểm tra lai kỹ nha. Bên trong thấy có dòng enclosed the presentation file nhưng lai không có kèm file theo thì kỳ quá.
PHP:Sub Goimail() Dim OutApp As Object Dim OutMail As Object Dim FileName As String, cell As Range Application.ScreenUpdating = 0 Application.DisplayAlerts = False Set OutApp = CreateObject("Outlook.Application") For Each cell In Range([H5], [H5].End(4)) OutApp.Session.Logon Set OutMail = OutApp.CreateItem(0) With OutMail .To = cell.Offset(, 3) .Subject = "VICTOR WOOD INTRODUCTION" .Body = "Dear " & cell & vbNewLine & vbNewLine _ & "I am Nhung from Victor Wood company. It's my pleasure to contact you." & vbNewLine & vbNewLine _ & "We'd like to welcome you as a new customer to our commercial business. " & vbNewLine & vbNewLine _ & "We are quite sure that you will be extremely satisfied with our line of products " & vbNewLine & vbNewLine _ & "and the service we provide to all our customers." & vbNewLine & vbNewLine _ & "Hope that we will have a good business relationship in the nearest future. " & vbNewLine & vbNewLine _ & "By the way, in order to help you have more information about our factory, " & vbNewLine & vbNewLine _ & "we have enclosed the Presentation file for your information and reference. " & vbNewLine & vbNewLine _ & "If you have the time, we always welcome you to visit our factory at the address: " & vbNewLine & vbNewLine _ & "Chon Thành Industrial Zone, Thành Tâm Ward, Chon Thành District, Bình Phuoc Province, Vietnam." & vbNewLine & vbNewLine _ & "We are looking forward to your reply soon. " & vbNewLine & vbNewLine _ & "If you have any queries, pls do not hesitate to contact us." & vbNewLine & vbNewLine & vbNewLine _ & "Best Regards" & vbNewLine _ & "Nhung (Ms)" .Display 'neu muon goi luon thi thay chu Display la Send nhe End With Next Application.ScreenUpdating = 1 End Sub
Do máy em bị hỏng nên gửi file chậm trễ. Em gửi file, Thầy giúp em với ạ.Muốn thế nào thì phải có file, không có file thì biết config thế nào???
Em cám ơn anh nhiều. Em muốn hỏi em sẽ xoá dòng "neu muon goi luon thi thay chu Display la Send nhe" đi phải không anh quanghai1969?
Do máy em bị hỏng nên gửi file chậm trễ.
View attachment 84481
Dear anh Hải!
- Em thấy bài viết của anh rất hay, em muốn hỏi thêm anh. Với các file nằm trong cùng folder, em muốn gửi tương ứng 1 file trong folder với 1 người trong file excel với điều kiện tên file tương ứng với tên cột mã đơn vị. Việc này có thực hiện được không ạ? Em cám ơn anh!
Anh ơi, gửi được anh ạ, nhưng khi em send thay cho display thì outlook hiên lên cảnh báo có gửi hay không? Nêu gửi nhiêu file thì phải ấn liên tục, có cách nào xử lý không anh nhỉ?Thử thay dòng này
FileName = "baocao_" & cell & ".xls"
bằng dòng này
FileName = "baocao_" & cell & ".pdf"
Nếu gởi đựơc có nghĩa là được, nếu không đựơc thì mình có kết quả là không được nhé
Đây là chức năng bảo vệ của OutLook nên mình không biết tắt như thế nào. Mình vẫn thích sử dụng .Display để kiểm tra trước khi bấm nút Send. Dù sao cũng không mất bao nhiêu thời gian.
Hình như bạn muốn tách file và gởi mail cho từng người. Nếu đúng thì sử dụng file này. Lưu ý là giải nén và lưu file vào máy tính trước khi chạy thử. File này sau khi gởi mail sẽ xóa hết những file mới tạo. Cột tên phải nằm ở cột B, và cột địa chỉ mail phải nằm ở cột cuối. Những cột giữa có thể thêm hoặc giảm. Nếu muốn thay đổi gì thì bàn tiếp.
Thân
Tôi chưa từng sử dụng OutLook, thấy trên diễn đàn mình có đề tài gởi mail tự động từ 1 danh sách(của anh Quang Hải ), tôi có mò từ chiều giờ xem như thế nào, cài đặt outlook và đọc code, nhưng khi chạy không biết outlook như thế nào mà báo lỗi ở chỗ nàyLàm theo format của file bạn, nếu sửa format lại thì coi chừng không chạy đấy
Có phải bạn đang cài 2 bộ Office?mình chạy rất nhiều bài tập dạng như thế này, toàn là bị lỗi như trên không? không biết khi cài đặt Outlook còn thiếu ACTIVE nào không? xin được các thành viên giúp đỡ, xin cảm ơn
Có phải bạn đang cài 2 bộ Office?
Bạn chạy thử trên máy nào chỉ có 1 bộ office thôi xem sao. Lúc trước mình cũng bị y chang, xóa cái 2003 thì chạy êm ruđúng rồi anh, nó báo lỗi 429 mà lên mạng tìm nó chỉ làm như vậy
Go to the VBA editor, Alt -F11
2) Tools>References in the Menu bar
3) Place a Checkmark before Microsoft Outlook 9 Object Library
nhưng trong máy chỉ cóMicrosoft Outlook 12 Object Library thôi
Theo tôi VBA làm được chuyện nàyĐã chạy được gởi mail hàng loạt, nhưng lỡ phát sinh ra trường hợp này thì sao
Yêu cầu
Nhấn Nút Send sẽ gởi tất cả các mail đi hàng loạt
với nội dung giống nhau
nhưng phần bên dưới thông tin của từng người lại khác nhau(dựa vào thông tin có sẳn trong từng dòng excel để đưa ra cho phù hợp với từng người nhận)
VBA có làm được như vậy không? xin được ý kiến của các thành viên trong diễn đàn, xin chân thành cảm ơn
tôi có gời file đính kèm
Em xem file coi đúng chưa, chỉ ngại cái chỗ đường dẫn và tên file của em thôi
Mã:Sub Goimail() Dim OutApp As Object Dim OutMail As Object Dim FileName As String, cell As Range Application.ScreenUpdating = 0 Application.DisplayAlerts = False Set OutApp = CreateObject("Outlook.Application") For Each cell In Range([H5], [H5].End(4)) OutApp.Session.Logon Set OutMail = OutApp.CreateItem(0) With OutMail .To = cell.Offset(, 3) .Subject = "THONG TIN CHU DE CAN GOI" 'nhap noi dung chu de vao giua 2 dau nhay .Body = "Dear " & cell & vbNewLine & vbNewLine & "dong 1" & vbNewLine & vbNewLine _ & "dong 2" & vbNewLine & vbNewLine _ & "dong 3" & vbNewLine & vbNewLine _ & "dong 4" & vbNewLine & vbNewLine _ & "dong 5" & vbNewLine & vbNewLine _ & "Tran Trong" .Attachments.Add "D:\NGUYEN VU\TAI LIEU TIEP KHACH\NGUYEN VU\INTRODUCTION.pptx" .Display 'neu muon goi luon thi thay chu Display la Send nhe End With Next Application.ScreenUpdating = 1 End Sub
End(4)=End(XlDown)Anh ơi cho em hỏi. Em chưa hiểu 2 câu lệnh này
For Each cell In Range([H5], [H5].End(4)) // Em chưa hiểu khúc End(4) là như thế nào ?
To = cell.Offset(, 3) // Tại sao sau dấu , có khoảng trắng rồi đến số 3. Số 3 ở đây có ý nghĩa gì vậy anh
Em lập trình bên .NET nhưng e đang gặp tình huống tương tự. Mong anh giải thích để e rõ hơn. Em cám ơn ạ !
End(4)=End(XlDown)
Offset(,3) tức là qua phải thêm 3 ô
Ví dụ [A1].Offset(,3) tức là chọn [D1]
Nếu em có file riêng đã tạo ra sẵn và muốn gửi theo list danh sách mail, thì em phải chỉnh sửa như thế nào anh chị?Hình như bạn muốn tách file và gởi mail cho từng người. Nếu đúng thì sử dụng file này. Lưu ý là giải nén và lưu file vào máy tính trước khi chạy thử. File này sau khi gởi mail sẽ xóa hết những file mới tạo. Cột tên phải nằm ở cột B, và cột địa chỉ mail phải nằm ở cột cuối. Những cột giữa có thể thêm hoặc giảm. Nếu muốn thay đổi gì thì bàn tiếp.
Thân
a cho e hỏi chút.file của a e đã thử và hoạt động tốt.nhưng có một điều e thắc mắc đó là sau khi ấn nút GOI MAIL thì outlook được gọi lên, mỗi mail đã được điền sẵn nhưng nó ko ấn nút send cho mình. Mình cần phải ấn send cho từng mail được hiện ra.Hình như bạn muốn tách file và gởi mail cho từng người. Nếu đúng thì sử dụng file này. Lưu ý là giải nén và lưu file vào máy tính trước khi chạy thử. File này sau khi gởi mail sẽ xóa hết những file mới tạo. Cột tên phải nằm ở cột B, và cột địa chỉ mail phải nằm ở cột cuối. Những cột giữa có thể thêm hoặc giảm. Nếu muốn thay đổi gì thì bàn tiếp.
Thân
Anh ơi. Trường hợp mình ko dùng outlook mà dùng gmail thì được ko ạ anhThử thay dòng này
FileName = "baocao_" & cell & ".xls"
bằng dòng này
FileName = "baocao_" & cell & ".pdf"
Nếu gởi đựơc có nghĩa là được, nếu không đựơc thì mình có kết quả là không được nhé