AW: ? Läuft in 2007
14.12.2012 12:00:42
Timo
Hallo Hendrik,
ich verstehe das auch nicht mehr. Hier mal mein Code. Der läuft durch bis zu dem Zeitpunkt wo die Tabellenblätter gelöscht werden sollen. Dann springt er auf den Entwurfsmodus. Wenn ich diesen dann deaktivieren will kommt folgende Fehlermeldung:
"Aufgrund der Sicherheitseinstellungen wurden Makros deaktiviert. Zum Ausführen von Makros müssen sie diese Arbeitsmappe erneut öffnen und dann Makros aktivieren. Klicken Sie auf 'Hilfe' , um weitere Informationen zum Aktivieren von Makros zu erhalten."
Private Sub CommandButton2_Click()
Dim InI As Integer
Dim Pfad, heute, Datum, strFileName, cstrPathName, SatzName
Dim i As Long
Dim sh As Worksheet
If Sheets("Ergebnis_Satz").Satz = "" Then
MsgBox "Bitte Satz auswählen", vbCritical, "F E H L E R"
Exit Sub
Else
End If
'Pfad ermitteln
Pfad = ActiveWorkbook.Path
heute = Now
Datum = Format(heute, "dd_mm_yyyy_hh_mm") ' das Jahr herausfinden
' Filename aus Auswahl ermitteln
SatzName = Sheets("Ergebnis_Satz").Satz
strFileName = Sheets("Ergebnis_Satz").Satz & "_Projektstand_gesamt_vom_" & "_" & Datum & ".xlsm" _
' in Path
cstrPathName = Pfad & "\Auswertung\" & Sheets("Ergebnis_Satz").Satz
'Schauen ob der der Ordner schon vorhanden ist und wenn nicht erstellen
If Dir(Pfad & "\Auswertung\" & SatzName, vbDirectory) = "" Then
MkDir (Pfad & "\Auswertung\" & SatzName)
Else
End If
ActiveWorkbook.SaveCopyAs (cstrPathName + "\" + strFileName)
Application.Workbooks.Open (cstrPathName + "\" + strFileName)
Windows(strFileName).Activate
Application.DisplayAlerts = False
'alle Blätter einblenden
For Each sh In Sheets
sh.Visible = True
Next sh
'Blätter löschen
For Each sh In Sheets
If sh.Name "Ergebnis_Satz" And sh.Name "Daten_Satz" Then sh.Delete
Next
On Error Resume Next
'Combobox löschen
Sheets("Ergebnis_Satz").Activate
ActiveSheet.Shapes.Range(Array("Satz")).Select
Selection.Delete
Sheets("Daten_Satz").Visible = False
With ActiveWorkbook
.Save
.Close
End With
Application.DisplayAlerts = True
Windows("Soll-Ist.xlsm").Activate
End Sub