Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
676to680
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
676to680
676to680
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Neue Arbeitsmappe per outlook versenden?
11.10.2005 09:25:48
ralle
Hallo zusammen.
Habe nachfolgendes Makro in eine Userform geschrieben.
Beim starten des Makros öffnet sich eine Maske in der Mann in einer Listbox die sheets der Excel-Arbeitsmappe gelistet werden. Hier können 1 oder mehrere sheets ausgewählt werden, die dann in eine neue Arbeitsmappe kopiert werden. In einer Combobox kann dann eine Emailadresse ausgesucht werden, an die dann diese neue Arbeitsmappe versand werden soll.
Wenn ich aber nun den Button "Abschicken" drücke wird nicht die neu erstellte Arbeitsmappe verschickt, sondern die Arbeitsmappe, in der das Makro ist.
Was mache ich falsch?

Private Sub cboemailliste_Change()
End Sub


Private Sub cmdAuswahlAnhang_Click()
Dim arr() As String
Dim irow As Integer, icounter As Integer
Dim spath As String
spath = Application.DefaultFilePath & "\"
For irow = 0 To ListBox1.ListCount - 1
If ListBox1.Selected(irow) Then
icounter = icounter + 1
ReDim Preserve arr(1 To icounter)
arr(icounter) = Worksheets(ListBox1.List(irow)).Name
End If
Next irow
Worksheets(arr).Copy
End Sub


Private Sub cmdcancel_Click()
Unload Me
End Sub


Private Sub cmdListefüllen_Click()
End Sub


Private Sub cmdversenden_Click()
Dim Nachricht As Object, OutApp As Object
Set OutApp = CreateObject("Outlook.Application")
Dim AWS As String
'Aktive Arbeitsmappe wird als Mail gesendet
AWS = ThisWorkbook.FullName
InitializeOutlook = True
Set Nachricht = OutApp.CreateItem(0)
With Nachricht
.To = Me.cboEmailliste.Value
.Subject = "Testmeldung von Excel2000 " & Date & Time
.attachments.Add AWS
.Body = "Das ist ein Test." & vbCrLf & "Bitte ignorieren."
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'Mail.Send
End With
'Outlook schliessen
OutApp.Quit
Set OutApp = Nothing
Set Nachricht = Nothing
End Sub


Private Sub ListBox1_Click()
End Sub


Private Sub UserForm_Initialize()
Dim wks As Worksheet
For Each wks In Worksheets
ListBox1.AddItem wks.Name
Next wks
Me.cboEmailliste.RowSource = ("A1:A80")
'Me.cboEmailliste.ListIndex = "0"
End Sub

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

Betreff
Datum
Anwender
Anzeige
AW: Neue Arbeitsmappe per outlook versenden?
11.10.2005 12:47:37
Heiko
Hallo Ralle,
hab jetzt nicht deinen ganzen Code nachvollzogen, glaube aber hier liegt der Fehler:
' ThisWorkbook steht für das Workbook in dem dieser Code sich befindet.
AWS = ThisWorkbook.FullName
' ActiveWorkbook steht für das aktive, also im Vordergrund, befindliche Workbook.
AWS = ActiveWorkbook.FullName
Gruß Heiko

PS: Rückmeldung wäre nett !
Danke für Rückmeldung
11.10.2005 14:10:19
ralle
... Danke für Deine Rückmeldung.
Ich glaub daran hat es jedoch nicht gelegen (habe das ausprobiert und funzt nicht).
Glaube der Fehler liegt darin, das die neue Arbeitsmappe nicht abgespeichert wird.
Habe mir jetz so geholfen, das die Arbeitsmappe abgespeichert wird und dann auf diese Abgespeicherte Arbeitsmappe zurückgegriffen wird.
Ist für mich echt kompliziert, funzt jetzt (ich weis aber nicht genau warum)
Gruß
ralle
Anzeige

299 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige