Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
572to576
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
572to576
572to576
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Eine geöffnete Mappe schliesen

Eine geöffnete Mappe schliesen
24.02.2005 07:42:15
Ralf
Guten morgen allerseits,
habe zu folgendem Problem schon gestern eine schnelle Hilfe bekommen:
Ich will aus einer Mappe eine einzelne Tabelle per Mail verschicken.
Habe das wie folgt gelöst bekommen:

Sub FrachtlisteVerschicken()
Dim Nachricht As Object, OutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = "C:"
Set OutApp = CreateObject("Outlook.Application")
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
Sheets("Frachtliste_Druck").Select
ActiveSheet.Copy
ActiveWorkbook.SaveAs SavePath & "\" & "Frachtliste -" & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1")
'Aktive Arbeitsmappe wird als mail gesendet
AWS = ActiveWorkbook.FullName
'InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "Daten"
.Subject = "Frachtliste -" & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1") & " - " & Date & Time
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
.HTMLBody = "Anbei die Frachtkostenliste von " & vbCrLf & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1")
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'.Send
'Hier könnte die Datei wieder gelöscht werden
Kill AWS
End With
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
Sheets("Eingabe").Select
End Sub

jetzt habe ich folgendes Problem:
Die auf C: zwischengespeicherte Datei soll geschlossen und auf C: wieder gelöscht werden, so dass nur noch die Orginaldatei und die Mail geöffnet sind.
Ist bestimmt nur eine Zeile.
Kann mir da einer weiterhelfen ?
Wäre toll
Gruß Ralf B.

10
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Eine geöffnete Mappe schliesen
24.02.2005 07:47:55
Matthias
Hallo Ralf,
vor dem Kill-Befehl (oder am besten gleich nach dem SaveAs) musst du die Zugriffsart ändern:
Activeworkbook.ChangeFileAccess xlReadOnly
Dann kannst du die Datei löschen.
Oder du schließt sie erst und löschst sie dann mit dem Klii-Befahl.
Gruß Matthias
AW: Eine geöffnete Mappe schliesen
24.02.2005 07:50:35
Werner
Halo Ralf
zuerst Datei schliessen:
ActiveWorkbook.Close
Dann bei Kill den ganzen Pfad mitgeben.
Gruss Werner
AW: Eine geöffnete Mappe schliesen
24.02.2005 08:15:41
Ralf
Vielen Dank für die schnelle Hilfe
Auf c: wird die datei jetzt gelöscht und auch die neu generierte Mappe wird geschlossen....
Nur: Es kommt eine Outlookmeldung: Möchten sie die Änderungen speichern ?
Nach beantworten schließt sich Outlook von selbst komplett.
Bei ja wurde die Datei vorher noch versand.
Bei nein passierte nichts.
Was muß ich noch eingeben, damit sich Outlook nicht automatisch schließt( Am besten natürlich ohne die Meldung)?
Hier nochmal der Code:

Sub FrachtlisteVerschicken()
Dim Nachricht As Object, OutApp As Object
Dim SavePath As String
Dim AWS As String
SavePath = "C:"
Set OutApp = CreateObject("Outlook.Application")
'Kopiert aktuelles Sheet in eine neue Mappe
'welche nur diese Tabelle enthält
Sheets("Frachtliste_Druck").Select
ActiveSheet.Copy
ActiveWorkbook.SaveAs SavePath & "\" & "Frachtliste -" & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1")
'Aktive Arbeitsmappe wird als mail gesendet
AWS = ActiveWorkbook.FullName
'InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = "Daten"
.Subject = "Frachtliste -" & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1") & " - " & Date & Time
.Attachments.Add AWS
'Hier wird eine normale Text Mail erstellt
.HTMLBody = "Anbei die Frachtkostenliste von " & vbCrLf & ActiveSheet.Range("D1") & "-#" & ActiveSheet.Range("B1")
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'.Send
'Hier könnte die Datei wieder gelöscht werden
ActiveWorkbook.Close
Kill AWS
End With
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
Sheets("Eingabe").Select
End Sub

Im Voraus schonmal vielen Dank !!
Ralf B.
Anzeige
AW: Eine geöffnete Mappe schliesen
24.02.2005 08:34:23
Werner
Hallo Ralf
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
Diese drei Zeilen verstehe ich nicht!
Gruss Werner
AW: Eine geöffnete Mappe schliesen
24.02.2005 08:39:02
Ralf
Hallo Werner,
waren so in dem Tip drin, den ich gestern bekommen habe.
Habe sie jetzt rausgeschmissen und.....siehe da....ES GEHT !!!
Vielen Dank
Danke für die Rückmeldung OT:-)
24.02.2005 08:42:09
Werner
AW: Danke für die Rückmeldung OT:-)
24.02.2005 08:58:19
Ralf
Sorry Werner das ich nochmal nerve
habe mich schon gefreut wie ein Schneekönig das es funktioniert.
Jetzt stellt sich heraus, das einige Empfänger nur Excel5/W95 benutzen.
Da die Mappe keine Makros oder ähnliches enthält Wäre es kein Problem sie in diesem Format abzuspeichern.
Ist es möglich das noch einzubinden ?
Gruß Ralf
Anzeige
AW: Danke für die Rückmeldung OT:-)
24.02.2005 09:09:37
Werner
Hallo Ralf
Habe gerade was Aufgezeichnet:
ActiveWorkbook.SaveAs Filename:= _
"E:\Eigene Dateien\Excel\KURSE\MAPPE_WIN95.xls", FileFormat:=xlExcel5, _
Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, _
CreateBackup:=False
Siehe FileFormat am Ende der 2. Zeile
Gruss Werner
AW: Danke für die Rückmeldung OT:-)
24.02.2005 09:18:05
Ralf
Danke Werner,
jetzt ist alles klar.
Der Rekorder!!!!.....manchmal hab ich echt aussetzer.
Ralf B.
Endgültig bis zum nächsten Tread
24.02.2005 09:20:46
Werner
Gruss Werner

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige