Serienbrief in VBA einprogrammieren
05.10.2018 15:31:12
Rosario
ich habe folgendes Problem. Meine "Muttertabelle" kann sich durch eine kleine Programmierung in verschiedene kleine Tabellen aufteilen. Diese Speichern sich auch alle unter den dazugehörigen Namen ab. Jedoch ist es meine Aufgabe diese Excel-Anhänge über einen Serienbrief versenden zu können. Da würde es das Programm "Mail Merge Toolkit" geben, welches mir aber zu unsicher ist. Ich benötige ein Programm, womit Excel selbst seine Dateien verschickt. Hat hier jemand schon Erfahrungen ? Wenn ja wäre ich über eine Hilfe sehr dankbar.
Hiermit teile ich die Excel-Tabelle auf:
Private Sub CommandButton1_Click()
Dim colUnkate As Collection
Dim lngIdx As Long
Application.ScreenUpdating = False
With Tabelle1
.AutoFilterMode = False
With .Range("A1").CurrentRegion
Set colUnkate = Unikate(.Columns(1))
For lngIdx = 2 To colUnkate.Count
.AutoFilter Field:=1, Criteria1:=colUnkate(lngIdx)
.Copy Workbooks.Add(xlWBATWorksheet).Worksheets(1).Cells(1)
With ActiveWorkbook
.SaveAs ThisWorkbook.Path & "\" & colUnkate(lngIdx) & ".xls"
.Close True
End With
Next
End With
.AutoFilterMode = False
End With
MsgBox "Hallo " & Application.UserName & " Ein Excel pro Kriterium wurde erstellt und im _
Ordner der Arbeitsdatei abgelegt"
End Sub
Function Unikate(ByRef rngVektor As Range) As CollectionDim cvarItem As Variant
Dim colData As Collection
Set colData = New Collection
On Error Resume Next
For Each cvarItem In rngVektor.Columns(1).Value
If Not IsEmpty(cvarItem) Then
colData.Add cvarItem, CStr(cvarItem)
End If
Next
Set Unikate = colData
End Function