Supportnet Computer
Planet of Tech

Supportnet / Forum / Tabellenkalkulation

Datei ohne Makro abspeichern





Frage

Moin, ist es möglich, eine Datei unter einem anderen Namen abzuspeichern unter der Voraussetzung dass diese Datei ohne irgendwelche Makro´s oder Verknüpfungen abgespeichert wird? Wenn möglich automatisch. MFG

Antwort 1 von coros

Moin master-t,

wie Du die Verknüpfungen beim Speichern wegbekommst, kann ich Dir nicht sagen. Es sei denn, Du würdest den gesamten Inhalt Deiner Tabellenblätter in eine neu angelegte Mappe kopieren und diese dann apspeichern. Das könnte man auch mit einem VBA Code automatisieren. Aber zum Löschen aller in der Datei vorhandenen Makros und VBA Code habe ich eine VBA Lösung für Dich. Kopiere nachfolgenden Code in das VBA Projekt "DieseArbeitsmappe".

Private Sub Workbook_BeforeSave(ByVal SaveAsUI As Boolean, Cancel As Boolean)
Dim VBA_Code As Object
ActiveWorkbook.SaveAs "Testname"
With ActiveWorkbook.VBProject
For Each VBA_Code In .VBComponents
Select Case VBA_Code.Type
Case 1, 2, 3: .VBComponents.Remove .VBComponents(VBA_Code.Name)
Case 100
With VBA_Code.CodeModule
    .DeleteLines 1, .CountOfLines
End With
End Select
Next
End With
End Sub


Der Code speichert Deine Datei unter einem anderen Namen und löscht dann alle VBA Code. Wobei Du dann beim Beenden der Datei abgefragt wirst, ob Du die Datei speichern möchtest. Das kann man nicht automatisieren, da nach dem 1. Speichern alle Code gelöscht wurden, somit an der Datei eine Änderung eingetreten ist und in der Datei ja kein VBA Code mehr enthalten sind
.
Du musst noch in der VBA Codezeile

ActiveWorkbook.SaveAs "Testname"

den Namen "Testname" gegen den Namen austauschen, den Deine Datei beim Speichern erhalten soll.

Ich hoffe, Du kommst klar. Bei Fragen melde Dich. Es gibt da auch noch andere Varianten, entweder einzelne Module oder nur Teile eines VBA Codes zu löschen. Wenn Du eventuell nur Teile Deines VBA Codes löschen möchtest hilt Dir das eventuell dann weiter.

MfG,
coros
Da hier der einzige Lohn für die Helfer eine Rückmeldung ist, wäre es nett, wenn Du ein
Feedback abgeben könntest, ob der Lösungsvorschlag Dein Problem gelöst hat.

Ich möchte kostenlos eine Frage an die Mitglieder stellen:


Ähnliche Themen:


Suche in allen vorhandenen Beiträgen: