Modul1.bas

Bild

Betrifft: Modul1.bas
von: Sonnenpeter
Geschrieben am: 03.03.2005 19:31:39
Hallo zusammen,
ich bastele jetzt schon eine geraume Zeit daran ein VBA-Modul in eine neu zu erstellende Arbeitsmappe zu kopieren, bekomme es einfach nicht hin!!
Jetzt bin ich dabei eine .bas Datei abzulegen und diese wieder einzulesen.
Hat den Nachteil, geht nur manuell, Makrorecorder zeichnet nichts auf, die VBA-Hilfe gibt auch nichts her und das VBA-Modul kann nicht schreibgeschützt werden.
Nerv, muss ich aufgeben oder habt ihr da noch eine Idee?
Gruß aus Mainz / Sonnenpeter
PS: Google gibt auch nichts her.

Bild

Betrifft: AW: Modul1.bas
von: Hajo_Zi
Geschrieben am: 03.03.2005 19:45:11
Hallo Sonnenpeter,
warum nicht einfach das Modul im VBA Editor von einer in die andere ziehen?

Bitte keine Mail, Probleme sollten im Forum gelöst werden.
Microsoft MVP für Excel
Das Forum lebt auch von den Rückmeldungen.
Betriebssystem XP Home SP2 und Excel Version 2003 SP1.


Bild

Betrifft: AW: Modul1.bas
von: =Peter=
Geschrieben am: 03.03.2005 19:45:45
Hallo Peter,
vielleicht hilft dir das weiter:
https://www.google.de/groups?as_q=Modul%20importieren%20VBA&as_ugroup=*excel*&lr=&hl=de
Gruss
Peter
Bild

Betrifft: AW: Modul1.bas
von: Heino B
Geschrieben am: 03.03.2005 21:19:10

Folgendes habe ich auf der Internetseite von Monika Weber gefunden.
Orginaltext der Seite:

14.) Module zwischen Projekten kopieren
Es gibt nicht einfach eine Methode, um Module zwischen Projekten zu kopieren. Der Code eines Projektes muss zuerst exportiert werden. Danach kann dieser in ein anderes Projekt importiert werden. Die folgende Prozedur exportiert das "Modul1" von der "Mappe2" in die "Mappe1".

Sub CopyOneModule()
   Dim FName As String
   With Workbooks("Mappe2")
       FName = .Path & "\code.txt"
       .VBProject.VBComponents("Modul1").Export FName
   End With
   Workbooks("Mappe1").VBProject.VBComponents.Import FName
End Sub

Ändere lediglich "Modul1" in den Namen des Moduls, das Du tatsächlich kopieren möchtest. Wenn Du alle Module kopieren möchtest (mit Ausnahme von DieseArbeitsmappe und den Tabellenmodulen), kannst Du den folgenden Code benutzen.

Sub CopyAllModules()
   Dim FName As String
   Dim VBComp As VBIDE.VBComponent
   With Workbooks("Mappe2")
       FName = .Path & "\code.txt"
       If Dir(FName) <> "" Then
           Kill FName
       End If
       For Each VBComp In .VBProject.VBComponents
           If VBComp.Type <> vbext_ct_Document Then
              VBComp.Export FName
              Workbooks("Mappe1").VBProject.VBComponents. _
                 Import FName
              Kill FName
           End If
       Next VBComp
   End With
End Sub

Bild

Betrifft: Aber Hallo......
von: Sonnenpeter
Geschrieben am: 03.03.2005 21:43:54
Danke Heino,

Sub CopyOneModule()
   Dim FName As String
   With Workbooks("Mappe2")
       FName = .Path & "\code.txt"
       .VBProject.VBComponents("Modul1").Export FName
   End With
   Workbooks("Mappe1").VBProject.VBComponents.Import FName
End Sub

Funktioniert super :-))))
Und was habe ich schon für komplizierte Wege probiert

Sub CopyAllModules()
   Dim FName As String
   Dim VBComp As VBIDE.VBComponent 'gibt hier den Fehler Bunutzerdefinierter Typ nicht definiert :-(((
   With Workbooks("Mappe2")
       FName = .Path & "\code.txt"
       If Dir(FName) <> "" Then
           Kill FName
       End If
       For Each VBComp In .VBProject.VBComponents
           If VBComp.Type <> vbext_ct_Document Then
              VBComp.Export FName
              Workbooks("Mappe1").VBProject.VBComponents. _
                 Import FName
              Kill FName
           End If
       Next VBComp
   End With
End Sub

Gruß Sonnenpeter
PS: Könntes Du noch die www.Adi der Internetseite von Monika Weber einstellen?
Bild

Betrifft: AW: Aber Hallo......
von: Hajo_Zi
Geschrieben am: 04.03.2005 06:12:22
Hallo
http://www.jumper.ch
Gruß Hajo
Bild

Betrifft: Danke Hajo.....o.T.
von: Sonnenpeter
Geschrieben am: 04.03.2005 17:01:05
.
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Daten suchen und anzeigen"