Pošljite liste ene ali več osebam, ki uporabljajo VBA v programu Microsoft Excel

Kazalo

Dodajte nov list, spremenite ime lista v pošto.
Vsako sporočilo, ki ga želite poslati, bo uporabljalo 3 stolpce.

  1. v stolpec A - vnesite ime lista ali listov, ki jih želite poslati.
  2. v stolpec B - vnesite e -poštni naslov.
  3. v stolpcu C - naslov zadeve se prikaže na vrhu e -poštnega sporočila.

V stolpec A: C vnesite podatke za prvo pošto, za drugo pa lahko uporabite stolpce D: F.
na ta način lahko pošljete 85 različnih e-poštnih sporočil (85*3 = 255 stolpcev).

 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 To 253 Step 3 If ThisWorkbook.Sheets ("mail" ) .Cells (1, a) .Value = "" Nato zapustite podprogram.ScreenUpdating = False last = ThisWorkbook.Sheets ("pošta"). Cells (Rows.Count, a) .End (xlUp) .Row N = 0 For shname = 1 Za zadnji N = N + 1 ReDim Preserve Arr (1 To N) Arr (N) = ThisWorkbook.Sheets ("mail"). Cells (shname, a) .Vrednost Next shname ThisWorkbook.Worksheet (Arr). Copy strdate = Format (Date, "dd-mm-yy") & "" & Format (Time, "h-mm-ss") ActiveWorkbook.SaveAs "Del" & ThisWorkbook.Name _ & "" & strdate & " .xls "Z ThisWorkbook.Sheets (" mail ") MyArr = .Range (.Cells (1, a + 1), .Cells (Rows.Count, a + 1) .End (xlUp)) Končaj z ActiveWorkbook.SendMail MyArr , ThisWorkbook.Sheets ("mail"). Cells (1, a + 2) .Vrednost ActiveWorkbook.ChangeFileAccess xlReadOnly Kill ActiveWorkbook.FullName ActiveWorkbook.Close False Application.ScreenUpdating = True Next End Sub

Vam bo pomagal razvoj spletnega mesta, ki si delijo stran s svojimi prijatelji

wave wave wave wave wave