15.09.2021, 09:10
Hallo zusammen :)
ich bin im Moment dabei ein etwas komplexeres Formular zu erstellen. Soweit so gut.
Mit Makros habe ich allerdings noch nie wirklich gearbeitet und es ergibt sich folgendes Problem:
Am Ende des Formulars soll es einen Button mit der Funktion geben, eine neue E-Mail mit dem Formular im Anhang zu öffnen aber nur, wenn auch die Pflichtfeleder ausgefüllt sind.
Die Makros für die Funktion "Speichern wenn Pflichtfelder ausgefüllt" und "neue E-Mail mit Anhang öffnen" habe ich. Diese klappen einzeln auch wunderbar.
Ich bekomme sie nur nicht so abgeändert und kombiniert, dass es im Endeffekt auch klappt.
Die Mailadresse habe ich aus Datenschutzgründen mal "geixt" ;)
Kann mir hier evtl. jemand weiterhelfen? :)
ich bin im Moment dabei ein etwas komplexeres Formular zu erstellen. Soweit so gut.
Mit Makros habe ich allerdings noch nie wirklich gearbeitet und es ergibt sich folgendes Problem:
Am Ende des Formulars soll es einen Button mit der Funktion geben, eine neue E-Mail mit dem Formular im Anhang zu öffnen aber nur, wenn auch die Pflichtfeleder ausgefüllt sind.
Die Makros für die Funktion "Speichern wenn Pflichtfelder ausgefüllt" und "neue E-Mail mit Anhang öffnen" habe ich. Diese klappen einzeln auch wunderbar.
Ich bekomme sie nur nicht so abgeändert und kombiniert, dass es im Endeffekt auch klappt.
Code:
Private Sub CommandButton1_Click()
Dim rngPflicht As Range, rngBereich As Range
Dim intLeere As Integer
Set rngPflicht = [B3,B9,E9,B11,B12,B13]
For Each rngBereich In rngPflicht.Areas
intLeere = intLeere + Application.WorksheetFunction.CountBlank(rngBereich)
Next
If intLeere > 0 Then
MsgBox "Bitte Pflichtfelder ausfüllen!"
Else
On Error Resume Next 'Falls Speichern abgebrochen wurde
If ActiveWorkbook.Saved Then
ActiveWorkbook.Save
Else
Application.Dialogs(xlDialogSaveAs).Show
End If
End If
End Sub
Code:
Sub Excel_Workbook_via_Outlook_Senden()
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 = xxx@xxx.de
.Subject = "Bl. xxxx, Kurztext"
.attachments.Add AWS
.Body = "Hallo zusammen," & vbCrLf & "bitte laut Anhang tätig werden." & vbCrLf & "Danke und liebe Grüße,"
'Hier wird die Mail nochmals angezeigt
.Display
'Hier wird die Mail gleich in den Postausgang gelegt
'Mail.Send
End With
End Sub
Die Mailadresse habe ich aus Datenschutzgründen mal "geixt" ;)
Kann mir hier evtl. jemand weiterhelfen? :)