Anzeige
Archiv - Navigation
512to516
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
512to516
512to516
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Schließen mit besonderheiten !

Schließen mit besonderheiten !
09.11.2004 12:27:32
Martin
Hi Forum
Wie schafft man es eine Excelmappe deren Name immer unterschiedlich ist da sich der Name aus zwei Zellen ergibt, per Makro zu schliesen. Befror diese Excekmappe z.b(Mappe2) geschlossen wird, soll eine andere Excelmappe z.B (Mappe1) aktiviert werden. Von der Excelmappe(Mappe1) aus die Makros aus der Excelmappe(Mappe2) mit folgendem Makro gelöscht werden

Sub Makro_löschen()
Dim wks As Worksheet
Dim mdl As Object
With ActiveWorkbook.VBProject
For Each wks In Worksheets
With .VBComponents(wks.CodeName).CodeModule
.DeleteLines 1, .CountOfLines
End With
Next wks
With .VBComponents("Modul1").CodeModule
.DeleteLines 1, .CountOfLines
End With
End With
MsgBox "In Der Arbeitsmappe wurden soebend alle Makros gelöscht"
End Sub

Befor die (Mappe2) dann engültig geschlossen wird soll sie nochmal gespeicht werden unter dem breits vorhandenen namen
Hoffe es ist verständlich
Bitte um eure Hilfe und bin für jede Hilfe dankbar
Gruß Martin

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Schließen mit besonderheiten !
xule
Hallo
Ich was hinbekommen.
Aber: Ist deine Logig richtig? Wenn ich das so ausführe löscht sich der Code selbst weg.
Dadurch läuft das Makro nicht bis zum Schluß.
Oder du Mußt dieses Makro in Modul2 setzen (Da Modul 1 ja gelöscht wird).
Dann ist aber die Datei NICHT Makrofrei.
Oder aber ich hab was falsch verstanden.. Dann kannst du aber bei der Variablenzuordnung Mappe1 /2 was ändern..
Gruß Uwe


      
Sub schliessen()
    Mappe1 =[A1] &[B1] 
'Beispiel
    If Mappe1 = "" Then Exit Sub
    Mappe1 = Mappe1 & 
".xls"
    Mappe2 = ThisWorkbook.Name
    Workbooks(Mappe1).Activate
    
'Dein makro
    Dim wks As Worksheet
    
Dim mdl As Object
    
With Workbooks(Mappe2).VBProject
        
For Each wks In Worksheets
            
With .VBComponents(wks.CodeName).CodeModule
                .DeleteLines 1, .CountOfLines
            
End With
        
Next wks
        
With .VBComponents("Modul1").CodeModule
            .DeleteLines 1, .CountOfLines
        
End With
    
End With
    MsgBox 
"In der Arbeitsmappe wurden soeben alle Makros gelöscht"
    
'Ende dein Teil
    Workbooks(Mappe2).Close savechanges = True
    
End Sub 



Anzeige
AW: Schließen mit besonderheiten !
09.11.2004 14:51:17
Martin
Danke für deine Hilfe
Du hast recht gibt es den nicht irgentwie ne andere Lösung für das problem?
Die Datei die ensteht soll ohne Makros abgespeichert werden und gesclossen werden.
Aber es soll auch wieder die ausgangs Datei aktiviert werden.
Würde es dir helfen wenn ich meinen bissheriegen Quellcode mal als Word dateihochlade?
Mfg Martin

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige