Importați un modul dintr-un fișier utilizând VBA în Microsoft Excel

Anonim

În acest articol, vom crea o macro pentru a importa un modul în registrul de lucru activ.

Vom folosi Filename.bas ca modul, pe care dorim să îl importăm.

Faceți clic pe butonul de inserare pentru a importa modulul din Filename.bas în registrul de lucru activ.

Cartea de lucru conține un singur modul „MainModule”.

După rularea macro-ului, un nou modul va fi importat din Filename.bas

Explicație logică

În acest articol, am creat două macrocomenzi, InsertVBComponent și Calling_Procedure

InsertVBComponent

Acesta ia numele registrului de lucru și numele fișierului ca intrări și importă modulul în registrul de lucru.

Apelare_Procedură

Se folosește pentru a apela macrocomanda InsertVBComponent cu registrul de lucru activ și Filename.bas ca intrări.

Explicarea codului

Dacă Dir (CompFileName) "" Atunci

Codul de mai sus este utilizat pentru a verifica dacă numele fișierului există în director.

wb.VBProject.VBComponents.Import CompFileName

Codul de mai sus este utilizat pentru a importa modulul în registrul de lucru activ.

Vă rugăm să urmați codul de mai jos

 Option Explicit Sub InsertVBComponent (ByVal wb As Workbook, ByVal CompFileName As String) 'Inserează conținutul CompFileName ca o componentă nouă în registrul de lucru' CompFileName trebuie să fie o componentă VBA validă potrivită pentru 'import (o componentă VBA exportată)' Verificarea dacă fișierul CompFileName există Dacă Dir (CompFileName) "" Apoi 'Ignorați erorile la eroare Reîncepeți Următorul' Inserează componenta din fișierul wb.VBProject.VBComponents.Import CompFileName On Error GoTo 0 End If Set wb = Nothing End Sub Sub Calling_Procedure () 'Calling InsertVBComponent procedure InsertVBComponent ActiveWorkbook, "C: \ Users \ Ramandeep \ Desktop \ Filename.bas" End Sub 

Dacă ți-a plăcut acest blog, distribuie-l prietenilor tăi de pe Facebook. De asemenea, ne puteți urmări pe Twitter și Facebook.

Ne-ar plăcea să aflăm de la dvs., să ne anunțați cum putem îmbunătăți munca noastră și o putem îmbunătăți. Scrieți-ne pe site-ul de e-mail