Anzeige
Archiv - Navigation
320to324
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
320to324
320to324
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Attachment Dateiendung

Attachment Dateiendung
14.10.2003 06:44:16
junny
Hai Leute,
im folgenden Code wird ein Workbook als Attachment versandt.
Nun wir ja bei savepath der Name vergeben, mein Problem:
Der Empfänger bekommt nun ein Workbook das *.xls.xls heißt soll heißen es wird der Workbookname mit .xls ausgelesen und wahrscheinlich das Format zusätzlich nochmals mit .xls!
Wie krieg ich das hin, dass das passt? (Workbookname mit einfacher Dateiendung)


Sub DruckSenden()
Dim outObj As Object
Dim Mail As Object
Dim i As Integer
Dim savepath As String
Dim savename As String
Application.DisplayAlerts = False
'Tabelle drucken
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
'Tabelle versenden
savepath = "c:\temp\" & ActiveWorkbook.Name & ".xls"
On Error Resume Next
Kill savepath
ActiveWorkbook.ActiveSheet.Copy
ActiveWorkbook.SaveAs savepath
ActiveWorkbook.Close savechanges:=False
Set outObj = CreateObject("Outlook.Application")
Set Mail = outObj.CreateItem(0)
With Mail
.Subject = Range("A1").Value & " " & Range("D1").Value & " " & Range("E1").Value
.Body = "Hallo" & vbLf & _
"hier die neueste Auslastungsliste" & vbLf & _
"Viele Grüße " & vbLf & _
Application.UserName
.To = "123@abc.de"
'.CC = Sheets("Tabelle1").Cells(3, 2).Value
'.Bcc = Sheets("Tabelle1").Cells(4, 2).Value
End With
With Application.FileSearch
.NewSearch
.LookIn = savepath
.SearchSubFolders = False
.FileType = msoFileTypeAllFiles
.Execute
Mail.Attachments.Add savepath
End With
Mail.send
Set Mail = Nothing
Set outObj = Nothing
'Excel (Workbook) schließen
If Workbooks.Count = 1 Then
ThisWorkbook.Saved = True
Application.Quit
Else
ThisWorkbook.Close False
End If
Application.DisplayAlerts = True
End Sub


Danke mal, Gruss volker

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Attachment Dateiendung
14.10.2003 07:02:59
GraFri
Hallo

Fehler:
Bei dem Befehl 'savepath = "c:\temp\" & ActiveWorkbook.Name & ".xls"'
wird keine Dateiändung benötigt, da diese bereists im 'ActiveWorkbook.Name'
enthalten ist.

???
Mit 'Kill savepath' löscht du aber diese Datei - ist das beabsichtigt?

mfg, GraFri
AW: Attachment Dateiendung
14.10.2003 08:27:17
junny
Hallo GrafFri,
habe mal getestet, wenn ich aber (& ".xls") einfach weglasse, dann bekomme ich keine Datei. (die mail ist leer/ohne Attachment)

weißt Du noch was????

Gruss volker
AW: Attachment Dateiendung
14.10.2003 11:43:09
GraFri
Hallo

Vielleicht hilft dir das weiter. Glaube aber, die Datei muß vorher gespeichert werden.



Sub Email_aus_Excel_mit_Outlook_2()
Dim EmailEmpfänger  As String
Dim EmailBetreff    As String
Dim EmailAnhang     As String
    
Dim olMailItem
Dim MailItem
Dim myOlApp
Dim myRecipient
Dim myAttachments
    
EmailEmpfänger = "gra.fri@aon.at"  '"grath.fritz@aon.at"
EmailBetreff = "Wochenbericht.xls"
EmailAnhang = "C:\Temp\Test.xls"    'ThisWorkbook.Path & ThisWorkbook.Name

'Outlook wird geöffnet
    Set myOlApp = CreateObject("Outlook.Application")
'Fenster für neue Mail wird geöffnet
    Set MailItem = myOlApp.CreateItem(olMailItem) ' opens new email

On Error GoTo ErrorHandler
'       Empfänger der Mail wird in das Adressfeld "An:" geschrieben
        Set myRecipient = MailItem.Recipients.Add(EmailEmpfänger)

'       Betreff der Mail wird in das Feld "Betreff:" geschrieben
        MailItem.Subject = EmailBetreff

'       Anlage wird angehängt
        Set myAttachments = MailItem.attachments.Add(EmailAnhang)

'       Email wird gesendet
        MailItem.Send

'   Outlook wird geschlossen und das Makro nach einer Pause
'   von 2 Sekunden fortgesetzt >> um Ressourcenprobleme zu vermeiden.
    myOlApp.Quit
    Application.Wait (Now + TimeValue("0:00:02"))
    Exit Sub

ErrorHandler:
    MsgBox vbTab & "Eine E-Mail an die Adresse " & vbCrLf & vbCrLf & _
    vbTab & EmailEmpfänger & vbCrLf & vbCrLf & _
    "kann leider NICHT automatisch versendet werden."
End Sub


     Code eingefügt mit Syntaxhighlighter 2.4


mfg, GraFri
Anzeige
Danke GraFri (muss noch testen)
14.10.2003 11:57:01
junny
o.T.

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige