In dit artikel gaan we een macro maken om een module in de actieve werkmap te importeren.
We zullen Bestandsnaam.bas gebruiken als een module, die we willen importeren.
Klik op de invoegknop om de module van Filename.bas naar de actieve werkmap te importeren.
Werkboek bevat slechts één module “HoofdModule”.
Nadat de macro is uitgevoerd, wordt een nieuwe module geïmporteerd uit Bestandsnaam.bas
Logische uitleg
In dit artikel hebben we twee macro's gemaakt, InsertVBComponent en Calling_Procedure
Vb-component invoegen
Het neemt de naam van de werkmap en de bestandsnaam als invoer en importeert de module naar de werkmap.
Calling_Procedure
Het wordt gebruikt om de InsertVBComponent-macro aan te roepen met de actieve werkmap en Filename.bas als invoer.
Code uitleg
Als Dir(CompFileName) "" Dan
Bovenstaande code wordt gebruikt om te controleren of de bestandsnaam in de directory bestaat.
wb.VBProject.VBComponents.Import CompFileName
Bovenstaande code wordt gebruikt om de module naar de actieve werkmap te importeren.
Volg hieronder voor de code:
Optie Explicit Sub InsertVBComponent(ByVal wb As Workbook, ByVal CompFileName As String) ' Voegt de inhoud van CompFileName in als een nieuwe component in de werkmap ' CompFileName moet een geldige VBA-component zijn die geschikt is voor ' import (een geëxporteerde VBA-component) 'Controleren of CompFileName-bestand bestaat If Dir(CompFileName) "" Dan 'Fouten negeren Bij fout Hervatten Volgende' Voegt component in uit bestand wb.VBProject.VBComponents.Import CompFileName Bij fout GoTo 0 End If Set wb = Nothing End Sub Calling_Procedure() 'Calling InsertVBComponent procedure InsertVBComponent ActiveWorkbook, "C:\Users\Ramandeep\Desktop\Filename.bas" End Sub
Als je deze blog leuk vond, deel hem dan met je vrienden op Facebook. Ook kunt u ons volgen op Twitter en Facebook.
We horen graag van u, laat ons weten hoe we ons werk kunnen verbeteren en voor u kunnen verbeteren. Schrijf ons op de e-mailsite