![]() |
Tipp 0071
|
Excel - Komponenten/Prozeduren ermitteln
|
 |
|
Autor/Einsender: Datum: |
|
Angie 27.05.2001 |
|
Entwicklungsumgebung: |
|
Excel 97 |
|
|
Über die VBE-Programmierung ist es u.a. möglich direkt auf Module,
den darin enthaltenen Makros und auf Userforms zuzugreifen.
|
In diesem Beispiel werden verschiedene Einsatzmöglichkeiten aufgezeigt,
z.B. wie Module exportiert, importiert und gelöscht werden können.
Auch die Erstellung eines neuen Moduls sowie das Hinzufügen eines Makros
aus einer Textdatei wird hier demonstriert.
|
|
|
Option Explicit
'-- Vorhandenes Modul 'modModulExpImp' als bas-Datei exportieren --
Sub ModulExportieren()
Dim pfad As String
Dim modulName As String
pfad = ThisWorkbook.Path
modulName = "modModulExpImp"
ThisWorkbook.VBProject.VBComponents(modulName). _
Export pfad & "\" & modulName & ".bas"
End Sub
'-- Vorhandenes Modul 'modModulExpImp' löschen --
Sub ModulLoeschen()
Dim modulName As String
Dim codeModul As Object 'VBComponent
modulName = "modModulExpImp"
Set codeModul = ThisWorkbook.VBProject.VBComponents _
(modulName)
ThisWorkbook.VBProject.VBComponents.Remove codeModul
Set codeModul = Nothing
End Sub
'-- Modul-Datei 'modModulExpImp.bas' importieren --
Sub ModulImportieren()
Dim pfad As String
Dim modulName As String
pfad = ThisWorkbook.Path
modulName = "modModulExpImp"
ThisWorkbook.VBProject.VBComponents.Import _
pfad & "\" & modulName & ".bas"
End Sub
'-- Makro aus Textdatei (*.txt) in ein vorhandenes Modul einlesen --
Sub MakroAusTextDateiImportieren()
Dim modulName As String
Dim neuesMakro As CodeModule
Dim pfad As String
Dim makroImportDatei As String
modulName = "modModulMakroHinzufuegen"
pfad = ThisWorkbook.Path
makroImportDatei = pfad & "\" & "MakroImportDatei.txt"
Set neuesMakro = ThisWorkbook.VBProject.VBComponents _
(modulName).CodeModule
neuesMakro.AddFromFile makroImportDatei
Set neuesMakro = Nothing
End Sub
'-- Neues Modul hinzufügen und Makro aus Textdatei einlesen --
Sub NeuesModulMitMakroHinzufuegen()
Dim neuesModul As Object 'VBComponent
Dim neuesModulName As String
Dim pfad As String
Dim makroImportDatei As String
neuesModulName = "modNeuesModul"
pfad = ThisWorkbook.Path
makroImportDatei = pfad & "\" & "MakroImportDatei.txt"
Set neuesModul = ThisWorkbook.VBProject.VBComponents.Add _
(vbext_ct_StdModule)
neuesModul.Name = neuesModulName
ThisWorkbook.VBProject.VBComponents(neuesModulName).CodeModule. _
AddFromFile (makroImportDatei)
Set neuesModul = Nothing
End Sub
'-- 'Neues Modul 'modNeuesModul' löschen
Sub NeuesModulLoeschen()
Dim neuesModul As Object 'VBComponent
Dim neuesModulName As String
neuesModulName = "modNeuesModul"
Set neuesModul = ThisWorkbook.VBProject.VBComponents _
(neuesModulName)
ThisWorkbook.VBProject.VBComponents.Remove neuesModul
Set neuesModul = Nothing
End Sub
|
|
|
|
Im Download-Beispiel werden zur Demo die entsprechenden Codes auf einer Userform angezeigt.
Wegen der umfangreichen Programmierung ist hier nur ein Teil des Codes
dargestellt.
|
Für die VBE-Programmierung ist das Einbinden der Objektbibliothek
Visual Basic For Applications Extensibility 5.3 notwendig.
|
|
|
|
Windows-Version |
95 |
 |
|
98/SE |
 |
|
ME |
 |
|
NT |
 |
|
2000 |
 |
|
XP |
 |
|
Vista |
 |
|
Win
7 |
 |
|
|
Excel-Version |
95 |
 |
|
97 |
 |
|
2000 |
 |
|
2002
(XP) |
 |
|
2003 |
 |
|
2007 |
 |
|
2010 |
 |
|
|
|
Download (32,2 kB)
|
Downloads bisher: [ 2175 ]
|
|
|