Importa un modulo da un file usando VBA in Microsoft Excel

Anonim

In questo articolo, creeremo una macro per importare un modulo nella cartella di lavoro attiva.

Useremo Filename.bas come modulo, che vogliamo importare.

Fare clic sul pulsante Inserisci per importare il modulo da Filename.bas nella cartella di lavoro attiva.

La cartella di lavoro contiene un solo modulo "MainModule".

Dopo aver eseguito la macro, verrà importato un nuovo modulo da Filename.bas

Spiegazione logica

In questo articolo abbiamo creato due macro, InsertVBComponent e Calling_Procedure

InserisciVBComponent

Prende il nome della cartella di lavoro e il nome del file come input e importa il modulo nella cartella di lavoro.

Calling_Procedure

Viene utilizzato per chiamare la macro InsertVBComponent con la cartella di lavoro attiva e Filename.bas come input.

Spiegazione del codice

If Dir(CompFileName) "" Then

Il codice sopra viene utilizzato per verificare se il nome del file esiste nella directory.

wb.VBProject.VBComponents.Import CompFileName

Il codice sopra viene utilizzato per importare il modulo nella cartella di lavoro attiva.

Si prega di seguire sotto per il codice

 Option Explicit Sub InsertVBComponent(ByVal wb As Workbook, ByVal CompFileName As String) ' Inserisce il contenuto di CompFileName come nuovo componente nella cartella di lavoro ' CompFileName deve essere un componente VBA valido adatto per ' import (un componente VBA esportato) 'Verifica se il file CompFileName esiste If Dir(CompFileName) "" Then 'Ignore errors On Error Resume Next 'Inserisce il componente dal file wb.VBProject.VBComponents.Import CompFileName On Error GoTo 0 End If Set wb = Nothing End Sub Sub Calling_Procedure() 'Chiama la procedura InsertVBComponent InsertVBComponent ActiveWorkbook, "C:\Users\Ramandeep\Desktop\Filename.bas" End Sub 

Se ti è piaciuto questo blog, condividilo con i tuoi amici su Facebook. Inoltre, puoi seguirci su Twitter e Facebook.

Ci piacerebbe avere tue notizie, facci sapere come possiamo migliorare il nostro lavoro e renderlo migliore per te. Scrivici al sito di posta elettronica