Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1480to1484
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Tabellenblatt per Mail mit Anpassungen

Tabellenblatt per Mail mit Anpassungen
16.03.2016 16:37:03
Thorsten
Hallo liebe Herber-Gemeinde,
habe den halben Vormittag damit verbracht, ein Makro zu finden was folgendes kann:
- aus einen Tabellenblatt heraus, ein Mail (Outlook) generieren
- das aktuelle Tabellenblatt als Excel Datei anhängen, wobei sich der Name der anzuhängenden Datei aus zwei Zellen im Tabellenblatt (A1 und D1) zusammensetzt
- der Betreff Text sich ebenfalls aus den Zellen A1 und D1 füllen soll
- der Empfänger (Mailadresse) in einer weiteren Zelle des Tabellenblattes steht (z.B. A2)
- und wenn das Makro sich nach dem Laden in Outlook noch selbst deaktiviert, damit keine weiteren (sinnlosen) Mails damit erstellt werden können
Das müsste es eigentlich sein; wäre für jede Hilfe dankbar denn ich kann immer wieder nur Teile meiner Anforderungen realisieren.
Beste Grüße aus Düsseldorf,
Thorsten

19
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Tabellenblatt per Mail mit Anpassungen
16.03.2016 16:49:52
Thorsten
Hallo Selli,
danke für die schnelle Info, leider kann ich es nicht ausprobieren, da die Firmenvorschriften Downloads grundsätzlich blockieren ... es müsset mir also jemand das passende Makro hier reinschreiben.
Also weiter geht's mit der Suche nach Hilfe ...
Thorsten

AW: Tabellenblatt per Mail mit Anpassungen
16.03.2016 16:53:19
selli
hallo thorsten,
wenn die firmenvorschriften das nicht zulassen, dann ist die firma auch nicht an einer gesunden arbeitseffizienz interessiert.
dann dauert das mailen eben solange wie es dauert.
gruß
selli

Anzeige
Code kopieren
16.03.2016 17:01:22
KlausF
Hallo Thorsten,
was hindert Dich daran, einen Code von der Seite zu kopieren
und in Deiner Datei auszuprobieren?
Gruß
Klaus

AW: Code kopieren
16.03.2016 17:04:29
Thorsten
... Hallo Selli, hallo Klaus,
ich hatte auf Ron de Bruin´s Seite scheinbar falsch geschaut ... bei den Add-In´s.
Jetzt schaue ich mir gerade die Makros an ... mal sehen was davon geht.
Im Moment hakt es bei der Befüllung der Betreffzeile und der Benennung des Anhangs über die Zellen A1 und D1.
Thorsten

AW: Code kopieren
16.03.2016 17:12:15
KlausF
Hallo Thorsten,
wenn Du einen Code gefunden hast, der im Prinzip Deinen Vorstellungen
entspricht, dann stelle ihn hier rein und frage noch einmal detailliert nach.
Dann bekommst Du bestimmt noch die fehlende Teil-Infos.
Gruß
Klaus

Anzeige
AW: Code kopieren
16.03.2016 18:18:12
Thorsten
OK, hier ist der Code, der angepasst werden müsste:
Sub Mail_ActiveSheet()
'Working in Excel 2000-2016
'For Tips see: http://www. _
rondebruin.nl/win/winmail/Outlook/tips.htm
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) 

soll auf Zelle A2 zugreifen und die dort hinterlegte _ Adresse nehmen

Hier soll der Betreff zusammengesetzt aus den _ Zellen A1 und D1 rein

" .Body = "Liebe KollegInnen,angehängt finden Sie die Datei zur Erfassung _ der Daten und Kommentare für den kommenden Quartalsbericht." .Attachments.Add Destwb.FullName 'You can add other files also like this '.Attachments.Add ("C:\test.txt") .Send 'or use .Display End With On Error GoTo 0 .Close savechanges:=False End With 'Delete the file you have send Kill TempFilePath & TempFileName & FileExtStr Set OutMail = Nothing Set OutApp = Nothing With Application .ScreenUpdating = True .EnableEvents = True End With End Sub

Anzeige
bitte testen
16.03.2016 21:43:29
KlausF
Hallo Thorsten,
ich kann den nachfolgenden Code nicht testen weil ich einen Mac habe.
Probier trotzdem mal:
Sub Mail_ActiveSheet()
'Working in Excel 2000-2016
'http://www.rondebruin.nl/win/winmail/Outlook/tips.htm
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
Dim Betreff As String
Dim Mailadresse As String
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
Betreff = ActiveSheet.Range("A1").Value & " " & ActiveSheet.Range("D1").Value
Mailadresse = ActiveSheet.Range("A2").Value
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) TempFileName = Betreff
Set OutApp = CreateObject("Outlook.Application")
Set OutMail = OutApp.CreateItem(0)
With Destwb
.SaveAs TempFilePath & TempFileName & FileExtStr, FileFormat:=FileFormatNum
On Error Resume Next
With OutMail
 .to = Mailadresse
.CC = ""
.BCC = ""
 .Subject = Betreff
.Body = "Liebe KollegInnen, angehängt finden Sie die Datei zur Erfassung der Daten  _
und Kommentare für den kommenden Quartalsbericht."
.Attachments.Add Destwb.FullName
'You can add other files also like this
'.Attachments.Add ("C:\test.txt")
.Send   'or use .Display
End With
On Error GoTo 0
.Close savechanges:=False
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
Set OutMail = Nothing
Set OutApp = Nothing
Set Sourcewb = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
Gruß
Klaus

Anzeige
AW: bitte testen
17.03.2016 08:41:12
Thorsten
Hallo Klaus,
Deine Änderungen haben super funktioniert ... ich bin fast am Ziel.
Letzte Frage dazu: wie kann ich den Mail-Text oder .body (formatiert mit Absätzen, Fettschrift) inkl. eines variablen Datums (soll auch aus einer Zelle, z.B. B2 geholt werden) einfügen? Wenn ich bei .Body im Makro den Text einfüge gibt es mir immer Syntax Fehler zurück (erwartet Zeilensprungmarke), zudem macht mir dann das variable Datum Probleme.
Der Text soll tatsächlich immer gleich bleiben, nur das Datum, weil "Abgabedatum", muss variabel sein.
Kannst Du mir da noch einmal helfen?
Vielen Dank im voraus, Gruss aus Neuss
Thorsten

Anzeige
AW: bitte testen
17.03.2016 10:32:01
selli
hallo thorsten,
also es sollte doch auch dir möglich sein aus dem code von klaus (betreffendes sogar fett) zu erkennen, wie mann den abruf aus zellen gestalten kann.
gruß
selli

AW: bitte testen
17.03.2016 11:18:43
Thorsten
Hallo Selli,
ja ja ... das wird wohl so gehen ActiveSheet.Range("B2").Value ... jedoch ist die Schwierigkeit eher beim formatierten Text aus dem Makro für das Mail.
Thorsten

könnte evtl. so funktionieren
17.03.2016 13:39:02
KlausF
Hallo Thorsten,
evtl. so:
Sub Mail_ActiveSheet()
'Working in Excel 2000-2016
'http://www.rondebruin.nl/win/winmail/Outlook/tips.htm
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
Dim Betreff As String
Dim Mailadresse As String
Dim MyDate As String
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
Betreff = ActiveSheet.Range("A1").Value & " " & ActiveSheet.Range("D1").Value
Mailadresse = ActiveSheet.Range("A2").Value
MyDate = ActiveSheet.Format(Range("B2").Value, „dd.mm.yyyy“)
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) "Liebe KollegInnen, angehängt finden Sie die Datei zur Erfassung der  _
Daten und Kommentare für den kommenden Quartalsbericht. Abgabetermin: " & MyDate
.Attachments.Add Destwb.FullName
'You can add other files also like this
'.Attachments.Add ("C:\test.txt")
.Send   'or use .Display
End With
On Error GoTo 0
.Close savechanges:=False
End With
'Delete the file you have send
Kill TempFilePath & TempFileName & FileExtStr
Set OutMail = Nothing
Set OutApp = Nothing
Set Sourcewb = Nothing
With Application
.ScreenUpdating = True
.EnableEvents = True
End With
End Sub
Gruß
Klaus

Anzeige
AW: könnte evtl. so funktionieren
17.03.2016 14:31:47
Thorsten
Hallo nochmal ... leider gibt es in der gelb hinterlegten Zeile ein Syntaxproblem, klappt also noch nicht.
Zudem; wie bekomme ich mehr Text in das Mail?
Thorsten
Sub Mail_ActiveSheet()
'Working in Excel 2000-2016
'http://www.rondebruin.nl/win/winmail/Outlook/tips.htm
Dim FileExtStr As String
Dim FileFormatNum As Long
Dim Sourcewb As Workbook
Dim Destwb As Workbook
Dim TempFilePath As String
Dim TempFileName As String
Dim OutApp As Object
Dim OutMail As Object
Dim Betreff As String
Dim Mailadresse As String
Dim MyDate As String
With Application
.ScreenUpdating = False
.EnableEvents = False
End With
Set Sourcewb = ActiveWorkbook
Betreff = ActiveSheet.Range("A1").Value & " " & ActiveSheet.Range("D1").Value
Mailadresse = ActiveSheet.Range("A2").Value
 MyDate = ActiveSheet.Format(Range"B2").Value, „dd.mm. _
yyyy“)
'Copy the ActiveSheet to a new workbook
ActiveSheet.Copy
Set Destwb = ActiveWorkbook
'Determine the Excel version and file extension/format
With Destwb
If Val(Application.Version) 

Anzeige
AW: könnte evtl. so funktionieren
17.03.2016 14:48:05
selli
hallo
MyDate = format(ActiveSheet.Format(Range"B2").Value, "dd.mm.yyyy")
gruß
selli

AW: könnte evtl. so funktionieren
17.03.2016 15:03:04
Thorsten
...danke Selli, habe es noch ein wenig angepasst; so ist es richtig:
MyDate = Format(ActiveSheet.Range("B2").Value, "dd.mm.yyyy")
Jetzt bleibt nur noch offen: wie bekomme ich mehrere Zeilen formatierten Text in das Makro? Es ändert sich ja nur das Datum; sonst bleibt der Text gleich.
Thorsten

AW: könnte evtl. so funktionieren
17.03.2016 15:25:08
selli
hallo,
der zeilenumbruch funktioniert mit chr(10)
also:
text1 & chr(10) & text2
formatieren des texts, weiß ich nicht.
gruß
selli

Anzeige
AW: könnte evtl. so funktionieren
17.03.2016 15:44:09
Thorsten
... klappt leider nicht. Ich dachte man fügt einfach den Text mit HTML codes ein, so wie:

Liebe Kolleginnen;
bitte füllen Sie die mitgelieferte Datei bis zum:

&MyDate


aus.

Mit freundlichen Grüßen, Ihr

Hans Muster

Thorsten

Bodytext
17.03.2016 16:37:09
KlausF
Hallo Thorsten,
.Body = "Liebe Kolleginnen;" & vbCrLf & _
"bitte füllen Sie die mitgelieferte Datei bis zum:" & vbCrLf & vbCrLf & _
MyDate & vbCrLf & vbCrLf & _
„aus.“ & vbCrLf & _
"Mit freundlichen Grüßen, Ihr“ & vbCrLf & _
„Hans Muster“
Formatieren weis ich nicht. Halte ich auch für unnötig.
Gruß
Klaus

Anzeige

303 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige