Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
900to904
900to904
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Ausgewählte Tabellen per EMail versenden

Ausgewählte Tabellen per EMail versenden
24.08.2007 16:50:00
Fritz_W
Hallo Forumsbesucher,
ich hoffe wieder einmal auf die Unterstützung der VBA-Experten in diesem Forum.
Ich beabsichtige folgendes umzusetzen:
In meiner Arbeitsmappe befinden sich in der Tabelle "Daten" im Bereich F6:F55 eMail-Anschriften.
Allerdings sind einige Zellen diese Bereich auch leer. Ich möchte nun per Mail jeweils bestimmte Tabellen der Arbeitsmappe an alle EMail-Anschriften, die im angegebenen Bereich enthalten ist, versenden.
Die Tabellenbezeichnungen (Tabellennamen) sind im Bereich V2:V5 der Tabelle "Daten" enthalten. In diesem Bereich ist in der Zelle V2 immer ein Tabellenname eingetragen, in den Zellen V3 bis V5 können (!) weitere Tabellennamen enthalten sein. In den betreffenden Tabellen, sollten zuvor die darin enthaltenen Formeln durch "Werte" ersetzt werden.
Ich bedanke mich bereits jetzt für jede Form von Hilfe!
mfg
Fritz

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Ausgewählte Tabellen per EMail versenden
28.08.2007 08:36:00
Wuxinese
Hallo Fritz,
Du kannst dafuer folgenden Code verwenden - er ist zwar wahrscheinlich nicht der eleganteste, aber bei mir hat der funktioniert.
Ich lass die Frage trotzdem offen, wahrscheinlich weiss jemand eine bessere Loesung.
Lass mich auf jeden Fall wissen, obs auch bei Dir damit geklappt hat.
Gruss
Rainer

Application.ScreenUpdating = False
Application.EnableEvents = False
Dim ich, fort As Workbook
Dim blatt As Worksheet
Set ich = ThisWorkbook
Set fort = Workbooks.Add
Application.DisplayAlerts = False
fort.Worksheets(3).Delete
fort.Worksheets(2).Delete
fort.Worksheets(1).Name = "WRZLBRNFT"
For i = 2 To 5
With ich.Worksheets("Daten")
If .Cells(i, "v").Text  "" Then
ich.Worksheets(.Cells(i, "v").Text).Copy after:=fort.Worksheets(fort.Worksheets. _
Count)
Set blatt = fort.Worksheets(fort.Worksheets.Count)
blatt.UsedRange.Copy
blatt.Range(blatt.UsedRange.Address).PasteSpecial xlPasteValuesAndNumberFormats
Set blatt = Nothing
End If
End With
Next i
If fort.Worksheets.Count = 1 Then GoTo NixKopiert
fort.Worksheets("WRZLBRNFT").Delete
Dim anz_used As Double
Dim empf() As String
anz_used = 0
With ich.Worksheets("Daten")
For i = 6 To 55
If .Cells(i, "f").Text  "" Then
If anz_used = 0 Then
ReDim empf(0)
Else
ReDim Preserve empf(UBound(empf) + 1)
End If
empf(anz_used) = .Cells(i, "f").Text
anz_used = anz_used + 1
End If
Next i
If anz_used  0 Then
fort.SendMail empf, "Aktuelle Datenerfassung", True
End If
End With
NixKopiert:
fort.Close False
Application.DisplayAlerts = True
Application.EnableEvents = True
Application.ScreenUpdating = True


Anzeige
AW: Ausgewählte Tabellen per EMail versenden
28.08.2007 12:31:56
Fritz_W
Hallo Rainer,
das hast du aber prima hingekriegt. Auch bei mir funktioniert es so, dass es eigentlich nichts auszusetzen gibt. Nur eine einzige Änderung (Erweiterung) ist für mich momentan wünschenswert. In einzelnen der ausgewählten Tabellenblättern könnte sich Code befinden, der ebenfalls "entfernt" werden sollte.
Einfach Klasse Deine Lösung und nochmals vielen Dank!
Gruß
Fritz

349 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige