Problem mit VBA Code
09.03.2009 19:21:13
Burghard
In einer Arbeitsmappe habe ich 2 Tabellen. in der einen gebe ich nur Daten ein und in der anderen wird eine Rechnungsvorlage gefüllt.
Wenn ich die Rechnung drucke soll eine Kopie in einen bestimmten Ordner abgelegt werden.
Soweit so gut - wenn ich nun aber die Daten aus dem Original Datenerfassungs blatt lösche, sind sie auch aus der Kopie verschwunden. Wie geht das an.
ich habe folgenden Code zusammengeschnipselt:
Private Sub Rechnung_drucken_Click()
Dim SavePath As String
Dim tb As Object
Dim Shp As Object
Dim vbc As Object
Dim wks As Worksheet
Dim Blatt As Worksheet
SavePath = "C:\Dokumente und Einstellungen\PC\Eigene Dateien\Rechnungen"
'Kopiert die aktuelle Tabelle
ActiveSheet.Copy
'Löscht die CommandButton
For Each Shp In ActiveSheet.Shapes
If Shp.Type = 12 Then Shp.Delete
Next
For Each Shp In ActiveSheet.Shapes
If Shp.Type 13 Then Shp.Delete
Next
'Löscht die Prozeduren
For Each wks In ActiveWorkbook.Worksheets
With ActiveWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines
End With
Next
'Gespeichertes Tabellenblatt wird geschützt
For Each Blatt In Worksheets
Blatt.Protect "Geheim"
Next
'Speichert die Datei unter dem Tabellennamen und das aktuelle Datum
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & " " & ThisWorkbook.Sheets(" _
Rechnung").Range("D10").Value & " " & Format(Now, "dd.mmm.yy") & ".xls"
'Öffnet den Druckerdialog
Variable = Application.Dialogs(xlDialogPrint).Show
'ActiveSheet.PrintOut druckt auf Standarddrucker
'Sheets("Teilebestellung").Activate läßt Tabelle offen
ActiveWorkbook.Close 'schließt kopierte Tabelle wieder
End Sub
Wo könnte der Fehler liegen, kann mir jemand helfen
MfG
Burghard