Habe folgenden Code:
Private Sub GQ33()
'PDF-Erstellung
ActiveWorkbook.ExportAsFixedFormat Type:=xlTypePDF, _
Filename:=ActiveWorkbook.path & "\" & Range("C5") & ".pdf", _
OpenAfterPublish:=False, From:=2, To:=4
'Mailversand
Dim outl As Object
Dim Mail As Object
Dim strDatei As String
strDatei = ActiveWorkbook.path & "\" & Range("C5") & ".pdf"
Set outl = CreateObject("Outlook.Application")
Set Mail = outl.CreateItem(0)
Mail.Subject = "xyz"
'Mailinhalt
Mail.htmlBody = "blabla"
Mail.To = "123@xyz.de"
MsgBox ("Bitte Datei auswählen.")
Set fdOpen = Application.FileDialog(msoFileDialogOpen)
With fdOpen
.AllowMultiSelect = True
.InitialView = msoFileDialogViewList
.InitialFileName = ActiveWorkbook.path
.Title = "Bitte die zu sendende(n) Datei(en) auswählen!"
.ButtonName = "per E-Mail senden"
If .Show = True Then
'Dim vItem As Variant
'For Each vItem In .SelectedItems
Mail.attachments.Add .SelectedItems(1)
'Next
End If
End With
Mail.attachments.Add strDatei
Mail.Display
End Sub
Habe ich mir übrigens alles selber größenteils hier auf der Seite zusammengesucht ;) Schonmal ein riesen Dankeschön dafür :)
Problem ist jetzt:
Wenn ich im ÖffnenDialog mehrere Dateien auswähle, sagen wir 3 Stück, öffnet er 3x die erste ausgewählte Datei (ich denke das liegt an .SelectedItems(1))...
Ich möchte aber flexibel 1, 2 oder 3 Dateien anhängen.
Habe es folgendermaßen geschafft, mehrere Dateien anzuhängen, aber dann MUSS man auch (in _
diesem Beispiel) 4 Stück anhängen, sonst kommt ein Fehler:
Mail.attachments.Add .SelectedItems(1)
Mail.attachments.Add .SelectedItems(2)
Mail.attachments.Add .SelectedItems(3)
Mail.attachments.Add .SelectedItems(4)
Das was im Code oben auskommentiert ist
'Dim vItem As Variant
'For Each vItem In .SelectedItems
Mail.attachments.Add .SelectedItems(1)
'Next
habe ich auch aufgeschnappt - bewirkt aber nichts.Ich frage mich die ganze Zeit, ob man den Wert in der Klammer wirklich absolut bestimmen muss?! _
Habe mehrere Platzhalter probiert und die Klammer ganz weggelassen - kommen immer Fehler.
Mail.attachments.Add .SelectedItems(*)
Mail.attachments.Add .SelectedItems(%)
Mail.attachments.Add .SelectedItems("")
Mail.attachments.Add .SelectedItems
Kann mir jemand auf die Sprünge helfen?Habe bereits 600 Zeilen für dieses Projekt gescriptet und kam über kurz über lang immer selbst zu einer Lösung, aber hier seh ich nach ein paar Stunden langsam Schwarz -.- Google spuckt auch nix hilfreiches aus :(
Ich will einfach, dass er ALLE Dateien, die ich im Open-Dialog auswählen auch so öffnet/anhängt.
Danke vielmals!!