Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
296to300
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
296to300
296to300
Aktuelles Verzeichnis
Verzeichnis Index
Verzeichnis Index
Übersicht Verzeichnisse
Inhaltsverzeichnis

Nochmal Module Tauschen

Nochmal Module Tauschen
19.08.2003 18:00:22
Martin Salbeck
Hy
Kann mir jemand helfen!
Suche ein Makro das Module löscht
und mit einem neuen Modul vesehen werden soll.
Die Makros sind mit Passwort gesichert,die prozedur
soll ablaufen ohne eine Sicherheitsabfrage zu stellen!
Dabei handelt es sich nur um Module (Bas Dateien) die einen
festen Namen Haben und die mit einem Modul ebenfalls
fester Name ersetzt werden sollen, diese wiederum aus einem festen
Verzeichnis kommen!
Nepumuk war so freundlich mir dieses Makro zu schreiben!
Option Explicit
Public

Sub Export_Import()
Dim vbc As Object, iCounter As Integer, cType As String, StDateiname As String
Workbooks.Open "D:\Eigene Dateien\Eigene Tabellen\Exportmappe.xls"
SendKeys "%{F11} %Xi{TAB 9}" & "Dein Kennwort" & "{tab}{enter}{enter} %q"
For Each vbc In Workbooks("Exportmappe.xls").VBProject.VBComponents
With vbc.CodeModule
For iCounter = 1 To .CountOfLines
If .ProcOfLine(iCounter, 0) > "" Or InStr(1, .Lines(iCounter, 1), "Dim") <> 0 _
Or InStr(1, .Lines(iCounter, 1), "Public") <> 0 Or InStr(1, .Lines(iCounter, 1), "Type") <> 0 _
Or InStr(1, .Lines(iCounter, 1), "Static") <> 0 Or InStr(1, .Lines(iCounter, 1), "Declare") <> 0 Then
Select Case vbc.Type
Case 1: cType = ".bas"
Case 2, 100: cType = ".cls"
Case 3: cType = ".frm"
End Select
Workbooks("Exportmappe.xls").VBProject.VBComponents(vbc.Name).Export "C:\Temp\" & vbc.Name & cType
Exit For
End If
Next iCounter
End With
Next vbc
Workbooks.Open "D:\Eigene Dateien\Eigene Tabellen\Testmappe.xls"
SendKeys "%{F11} %Xi{TAB 9}" & "Dein Kennwort" & "{tab}{enter}{enter} %q"
With Workbooks("Testmappe.xls").VBProject
For Each vbc In .VBComponents
Select Case vbc.Type
Case 1, 2, 3: .VBComponents.Remove .VBComponents(vbc.Name)
Case 100
With vbc.CodeModule
.DeleteLines 1, .CountOfLines
End With
End Select
Next
StDateiname = Dir("C:\temp\" & "*.*")
Do While StDateiname <> ""
If UCase(Right(StDateiname, 4)) = ".BAS" Or UCase(Right(StDateiname, 4)) = ".FRM" Or UCase(Right(StDateiname, 4)) = ".CLS" Then
.VBComponents.Import "C:\Temp\" & StDateiname
End If
StDateiname = Dir
Loop
For Each vbc In .VBComponents
If vbc.Type = 2 Then
If Left(vbc.Name, 5) = "Diese" Or Left(vbc.Name, 7) = "Tabelle" Then
.VBComponents(Left(vbc.Name, Len(vbc.Name) - 1)).CodeModule.InsertLines 1, vbc.CodeModule.Lines(1, vbc.CodeModule.CountOfLines)
.VBComponents.Remove .VBComponents(vbc.Name)
End If
End If
Next vbc
End With
End Sub

Leider vergaß ich zu erwähnen das die Module Projektgeschützt sind,
und nur mit eingabe des Passwortes Sichbar werden.
Ohne Projektschutz läuft das Makro, leider nicht mit Projektschutz.
Wer Kann mir Helfen!
Danke im voraus
Martin

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nochmal Module Tauschen
19.08.2003 18:09:05
Jochen
Hallo,
bei Version steht: ohne Relevanz, das stimmt aber nicht.
Der Code für das Aufheben des Passwortschutzes ist schon
enthalten. Trag da mal das richtige Passwort ein.
Gruß Jochen

Passwort stimmt
19.08.2003 18:13:36
Martin Salbeck
Hy Jochen das Makro Läuft ja aber nur wenn der Haken im Projektschutz raus ist.
Leider nicht wenn er drin ist so sind die Module nicht sichtbar und er kommt nicht dran
Gruß Martin

AW: Passwort stimmt
19.08.2003 18:23:31
Jochen
Hallo,
also bei mir geht das, sorry kein weiterer Plan.
Gruß Jochen

Hilfe
19.08.2003 19:13:05
Martin Salbeck
wer kann mir weiterhelfen
Module Tauschen bei den Modulen ist ein Projektschutz eingerichtet!
Danke im voraus
Martin

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige