AW: xlDialogSendMail liefert falsche Datei
18.02.2022 09:40:19
Rolf
Guten Morgen Pierre
Eigentlich wollte ich nur das Application.Dialogs..... zeigen. Ich dachte das sei genug. Aber hier kommt der gesamte Code. Gestartet über Button mit Private Sub cmdSaveSend_Click()
Private Sub cmdSaveSend_Click()
Speichern
MsgBox (ThisWorkbook.Sheets("Sprachen").Cells(109, SprachwahlSpalte)), vbInformation, ThisWorkbook.Sheets("Sprachen").Cells(117, SprachwahlSpalte)
Application.Dialogs(xlDialogSendMail).Show "meine@mailadresse.ch", ThisWorkbook.Sheets("Sprachen").Cells(45, SprachwahlSpalte)
End Sub
_____________________________________________________________________________
Private Sub Speichern()
Dim DieseArbeitsmappe As String
Dim DieseArbeitsmappeDir As String
Dim Tabelle_save As Variant
Dim intPos As Integer
DieseArbeitsmappe = ThisWorkbook.Sheets("Programm").Range("G1")
DieseArbeitsmappeDir = ThisWorkbook.Sheets("Programm").Range("G2")
Tabelle_save = Application.GetSaveAsFilename(InitialFileName:=DieseArbeitsmappeDir & "\" & DieseArbeitsmappe, Filefilter:="Excel Files (*.xlsm), *.xlsm")
Application.DisplayAlerts = False
If Tabelle_save = False Then
MsgBox "File not saved"
Else
intPos = InStrRev(Tabelle_save, "\")
DieseArbeitsmappeDir = Left(Tabelle_save, intPos)
DieseArbeitsmappe = Mid(Tabelle_save, intPos + 1)
'MsgBox (Tabelle_save)
'MsgBox (DieseArbeitsmappeDir)
'MsgBox (DieseArbeitsmappe)
ThisWorkbook.Sheets("Programm").Range("G1") = DieseArbeitsmappe
ThisWorkbook.Sheets("Programm").Range("G2") = DieseArbeitsmappeDir
ThisWorkbook.SaveAs Filename:=Tabelle_save
MsgBox (ThisWorkbook.Sheets("Sprachen").Cells(108, SprachwahlSpalte)), vbInformation, ThisWorkbook.Sheets("Sprachen").Cells(117, SprachwahlSpalte)
End If
Application.DisplayAlerts = True
End Sub
Das Problem liegt in der Private Sub cmdSaveSend_Click(), in der letzten Zeile mit Application.Dialogs(xlDialogSendMail).Show. Hier sollte man genau bestimmen können welche Arbeitsmappe versendet werden soll.
Danke im Voraus.
Gruss aus Zürich
Rolf