Option
Private
Module
Sub
Absenden()
[G4] = [G4] + 1
ActiveSheet.Unprotect Password:=
""
Dim
Source
As
Range
Dim
Dest
As
Workbook
Dim
wb
As
Workbook
Dim
TempFilePath
As
String
Dim
TempFileName
As
String
Dim
FileExtStr
As
String
Dim
FileFormatNum
As
Long
Dim
OutApp
As
Object
Dim
OutMail
As
Object
Set
Source =
Nothing
On
Error
Resume
Next
Set
Source = Range(
"A1:I27"
).SpecialCells(xlCellTypeVisible)
On
Error
GoTo
0
If
Tabelle1.Range(
"E20"
).Value =
""
Then
MsgBox
"Zelle Baubeginn ist leer. Tragen Sie den Baubeginn ein!"
, vbCritical
Exit
Sub
End
If
ActiveSheet.Protect Password:=
""
If
Tabelle1.Range(
"E22"
).Value =
""
Then
MsgBox
"Zelle Bauende ist leer. Tragen Sie das voraussichtliche Bau-Ende ein!"
, vbCritical
Exit
Sub
End
If
ActiveSheet.Protect Password:=
""
If
Tabelle1.Range(
"E24"
).Value =
""
Then
MsgBox
"Zelle Budgetierte Bausumme (EUR) ist leer. Tragen Sie einen Wert ein!"
, vbCritical
Exit
Sub
End
If
ActiveSheet.Protect Password:=
""
If
Tabelle1.Range(
"E26"
).Value =
""
Then
MsgBox
"Zelle Tochtergesellschaft ist leer. Tragen Sie einen Wert ein!"
, vbCritical
Exit
Sub
End
If
ActiveSheet.Protect Password:=
""
With
Application
.ScreenUpdating =
False
.EnableEvents =
False
End
With
Set
wb = ActiveWorkbook
Set
Dest = Workbooks.Add(xlWBATWorksheet)
Source.Copy
With
Dest.Sheets(1)
.Cells(1).PasteSpecial Paste:=8
.Cells(1).PasteSpecial Paste:=xlPasteValues
.Cells(1).PasteSpecial Paste:=xlPasteFormats
.Cells(1).
Select
Application.CutCopyMode =
False
End
With
TempFilePath = Environ$(
"temp"
) & "\"
TempFileName =
"Selection of "
& wb.Name &
" "
_
& Format(Now,
"dd-mmm-yy h-mm-ss"
)
If
Val(Application.Version) < 12
Then
FileExtStr =
".xlsx"
: FileFormatNum = -4143
Else
FileExtStr =
".xlsx"
: FileFormatNum = 51
End
If
Set
OutApp = CreateObject(
"Outlook.Application"
)
Set
OutMail = OutApp.CreateItem(0)
With
Dest
.SaveAs TempFilePath & TempFileName & FileExtStr, _
FileFormat:=FileFormatNum
On
Error
Resume
Next
With
OutMail
.GetInspector
.
To
=
"irgendeinmail@weisnicht.de"
.CC =
""
.BCC =
""
.Subject =
"Projekt"
.Body =
"Bauprojekt"
& vbCrLf & .Body
.Attachments.Add Dest.FullName
.Display
End
With
On
Error
GoTo
0
.Close SaveChanges:=
False
End
With
Kill TempFilePath & TempFileName & FileExtStr
Set
OutMail =
Nothing
Set
OutApp =
Nothing
With
Application
.ScreenUpdating =
True
.EnableEvents =
True
End
With
ActiveSheet.Protect Password:=
""
End
Sub