Microsoft Excel'de VBA kullanan bir veya daha fazla kişiye posta sayfaları

Anonim

Yeni sayfa ekle, sayfa adını posta olarak değiştirin.
Göndermek istediğiniz her posta 3 sütun kullanacaktır.

  1. A sütununda - göndermek istediğiniz sayfa veya sayfa adını girin.
  2. B sütununda - E-posta adresini girin.
  3. C sütununda - konu başlığı E-posta mesajının en üstünde görünür.

A:C sütununa ilk posta için bilgi girin ve ikincisi için D:F sütunlarını kullanabilirsiniz.
bu şekilde 85 farklı e-posta gönderebilirsiniz (85*3 = 255 sütun).

 Sub Mail_sheets() Dim MyArr As Variant Dim Last As Long Dim shname As Long Dim a As Integer Dim Arr() As String Dim N As Integer Dim strdate As String For a = 1 - 253 Adım 3 If ThisWorkbook.Sheets("mail" .Cells(1, a).Value = "" Sonra Sub Application'dan Çıkın.ScreenUpdating = False last = ThisWorkbook.Sheets("mail").Cells(Rows.Count, a).End(xlUp).Row N = 0 shname = 1 için Son N = N + 1 ReDim Koruma Arr(1'den N'ye) Arr(N) = ThisWorkbook.Sheets("mail").Cells(shname, a).Value Sonraki shname ThisWorkbook.Worksheets(Arr). Kopyala strdate = Format(Tarih, "gg-aa-yy") & " " & Format(Saat, "s-mm-ss") ActiveWorkbook.SaveAs "Part of " & ThisWorkbook.Name _ & " " & strdate & " .xls" With ThisWorkbook.Sheets("mail") MyArr = .Range(.Cells(1, a + 1), .Cells(Rows.Count, a + 1).End(xlUp)) ActiveWorkbook.SendMail MyArr ile Bitir , ThisWorkbook.Sheets("mail").Cells(1, a + 2).Value ActiveWorkbook.ChangeFileAccess xlReadOnly ActiveWorkbook'u öldür.FullName ActiveWorkbook.Close False Application.ScreenUpdating = True Sonraki a Alt Bitiş