AW: Blatt in andere Mappe kopieren ohne Makros
12.11.2006 10:56:58
Erich
Hallo Werner,
probiers mal mit
Option Explicit
Public Sub Blattkopie_noShapesMakros()
Dim wbkZiel As Workbook, wbkTemp As Workbook, objShape As Shape, objKomp As Object
Set wbkZiel = Workbooks("Ziel.xls") ' muss geöffnet sein
ActiveSheet.Copy ' Blatt in neue (temp.) Mappe kopieren
Set wbkTemp = ActiveWorkbook
' dort alle Shapes löschen
For Each objShape In ActiveSheet.Shapes
objShape.Delete
Next objShape
' und alle Makros löschen
' Code von Nepumuk
' phorum.excelhost.de/read.php?11,105681,105685#msg-105685
With ActiveWorkbook.VBProject
For Each objKomp In .VBComponents
Select Case objKomp.Type
Case 1, 2, 3 ' Module, Klasssenmodule, Userforms
.VBComponents.Remove .VBComponents(objKomp.Name)
Case 100 ' Klasssenmodule von Workbook, Sheets
With objKomp.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
End With
' Blatt in Zielmappe kopieren
Worksheets(1).Copy after:=wbkZiel.Sheets(wbkZiel.Sheets.Count)
wbkTemp.Close False ' temp. Mappe schließen ohne Speicherung
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort