Live-Forum - Die aktuellen Beiträge
Datum
Titel
28.03.2024 21:12:36
28.03.2024 18:31:49
Anzeige
Archiv - Navigation
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
944to948
944to948
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Prozeduren vor dem Speichern aus Tabelle löschen

Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 08:26:00
BuStü
Guten Morgen,
ist es möglich vor dem Speichern eines Tabellenblattes die vorhandenen Prozeduren zu löschen.
Ich habe gedacht es funktioniert mit folgendem Code:
For Each Shp In ActiveSheet
If ActiveSheet.VBProject.VBComponents(wks.CodeName).CodeModule.DeleteLines 1,.CountOfLines
Next
funktiniert leider nicht.
Kann mir jemand helfen.
MfG
Bustue

6
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 08:34:13
Herbert
Hallo Bustue
Ich hab mir das auf ´nen Button in der Mappe gelegt:

Private Sub CmdFinish_Click()
On Error Resume Next
Application.ScreenUpdating = False
Dim wks As Worksheet, wkb As Workbook
Set wkb = ThisWorkbook
Worksheets(1).Copy
Sheets(1).CmdFinish.Visible = False
Set wks = ActiveSheet
With ActiveWorkbook.VBProject _
.VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines
End With
DisplayAlerts = False
wkb.Close savechanges:=False
DisplayAlerts = True
Application.ScreenUpdating = True
End Sub


Gruß Herbert

Anzeige
AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 11:22:00
BuStü
Danke Herbert,
Leider sind nicht alle enthaltenen Prozeduren gelöscht.
MfG
Burghard

AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 08:43:17
Josef
Hallo ?
Dim wks As Worksheet

For Each wks In ActiveWorkbook.Worksheets
    With ActiveWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
        .DeleteLines 1, .CountOfLines
    End With
Next


Gruß Sepp



Anzeige
AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 11:16:00
BuStü
Hallo Josef, danke für Deine Antwort,
- leider erhalte ich in der Zeile
With ActiveWorkbook.VBProject.VBComponents(wks.CodeName).CodeModule
die Fehlermeldung: Laufzeitfehler1004: Der programmatische Zugriff auf das Visual Basic-Project ist nicht sicher.
Habe ich was übersehen. der Gesamtcode sieht jetzt so aus:

Private Sub Teilebestellung_drucken_Click()
Dim SavePath As String
Dim tb As Object
Dim Shp As Object
Dim vbc As Object
Dim wks As Worksheet
SavePath = "C:\Dokumente und Einstellungen\PC3\Eigene Dateien\Bestellungen"
'Kopiert die aktuelle Tabelle
ActiveSheet.Copy
'Löscht die CommandButton
For Each Shp In ActiveSheet.Shapes
If Shp.Type = 12 Then Shp.Delete
Next
'Löscht alle AutoForm
'For Each tb In ActiveSheet.Shapes
'tb.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
'Speichert die Datei unter dem Tabellennamen und das aktuelle Datum mit UIhrzeit
ActiveWorkbook.SaveAs SavePath & "\" & ActiveSheet.Name & " " & Format(Now, "dd-mmm-yy h-mm- _
ss") & ".xls"
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


MfG
BuStü

Anzeige
AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 11:30:26
Josef
Hallo ?
du must unter > Extras > Makros > Sicherheit > Vertrauenswürdige Herausgeber, die Option "Zugriff auf VBA-Projekt zulassen" anhaken.

Gruß Sepp



AW: Prozeduren vor dem Speichern aus Tabelle löschen
30.01.2008 13:14:00
BuStü
Hallo Josef,
Du warst meine Rettung. Großen Dank.
MfG
BuStü

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige