Sub BlaetterSpeichern()
Dim wksKalk As Worksheet
Dim wbKopie As Workbook
Dim strDateiname As String
Dim strKunde As String
Dim strKalkulation As String
Dim strNameMappe As String
On Error GoTo Fehler
Set wksKalk = Worksheets("Kalkulation")
Const strPfadVorKalk As String = "C:\Artikelliste\Vorkalkulation"
Const strPfadNachKalk As String = "C:\Artikelliste\Nachkalkulation"
strKunde = wksKalk.Range("B5")
strNameMappe = wksKalk.Range("B9") & ".xls"
strKalkulation = wksKalk.Range("D13")
'Prüfen in welchen Ordner kopiert werden soll, ggf. Ordner erstellen
If strKalkulation = "Vor" Then
If Dir(strPfadVorKalk & "\" & strKunde, vbDirectory) = "" Then
VBA.MkDir strPfadVorKalk & "\" & strKunde
End If
strDateiname = strPfadVorKalk & "\" & strKunde & "\" & strNameMappe
ElseIf strKalkulation = "Nach" Then
If Dir(strPfadNachKalk & "\" & strKunde, vbDirectory) = "" Then
VBA.MkDir strPfadNachKalk & "\" & strKunde
End If
strDateiname = strPfadNachKalk & "\" & strKunde & "\" & strNameMappe
Else
MsgBox "Falsche Auswahl in Zelle B13!"
GoTo Beenden
End If
'Blätter kopieren
ThisWorkbook.Sheets(Array("Kalkulation", "Machbarkeit")).Copy
Set wbKopie = ActiveWorkbook
'Schaltfläche löschen
wbKopie.Worksheets("Kalkulation").Shapes("Schaltfläche 1").Delete
'Datei speichern
wbKopie.SaveAs FileName:=strDateiname, addtomru:=True
wbKopie.Close
Beenden:
Fehler:
If Err.Number <> 0 Then
MsgBox "Fehler: " & Err.Number & vbLf & Err.Description & vbLf _
& "in Prozedur BlaetterSpeichern"
End If
Set wksKalk = Nothing
Set wbKopie = Nothing
End Sub
Sub speichern()
BlaetterSpeichern
Daten_eintragen
End Sub
leider funktioniert diese kleiner Makro "speichern" nicht, hab Fehlermeldung
kann mir jemand sagen , was in der Prozedur speichern falsch ist?
vielen dank im voraus
Maik
'Schaltfläche löschen
With wbKopie.Worksheets("Kalkulation")
.Unprotect
.Shapes("Schaltfläche 1").Delete
.Protect
End With
'Datei speichern
Gruß
Franz