VBA如何在模組中引用另模組的函式

時間 2021-07-08 20:34:04

1樓:職場戴老師

1. 什麼是dll檔案

dll是dynamic link library 的縮寫形式,dll是一個包含可由多個程式同時使用的**和資料的庫。

dll不是可執行檔案。動態連結提供了一種方法,使程序可以呼叫不屬於其可執行**的函式。函式的可執行**位於一個 dll 中,該 dll 包含一個或多個已被編譯、連結並與使用它們的程序分開儲存的函式。

dll 還有助於共享資料和資源。多個應用程式可同時訪問記憶體中單個dll 副本的內容。dll 是一個包含可由多個程式同時使用的**和資料的庫。

2. dll在vba中有什麼作用?

① 把核心**封裝在dll裡,使用者無法檢視到dll檔案中的**,有利於保護自已的**。

② 可以放在dll檔案中被大家共享。

3. 怎麼把vba**封裝到dll檔案中呢?

常用的方法是使用vb6.0進行封裝,所以大家要想學習本集封裝,需要先安裝vb6.0程式。具本的封裝步驟詳見下面的dll封裝示例模組。

4. 怎麼在vba中呼叫這些**呢?

封裝的**是以類的形式存在,所以呼叫前需要先載入dll檔案,然後在模組中象呼叫類模組一樣呼叫dll中的函式,詳見下面的"dll**的呼叫"模組內容。

二、dll封裝

在模組中編寫試調正確

例:寫一個求矩形面積的vba自定義函式。

function 面積(長 as double, 寬 as double)

面積 = 長 * 寬

end function

2. 開啟vb程式,在"新建工程'視窗中點"activex dll"圖示。

2樓:匿名使用者

我試了,在同一個檔案中,只要另一個模組中的函式前不要加 private 之類的限制詞,就可以直接呼叫,或者前面加模組名再加函式名來呼叫。比如(我用的call方式呼叫,其他方式應該也行的吧):

call 模組2.dealmerge(activecell)或者call dealmerge(activecell)模組2中的過程是這樣的:

function dealmerge(target as range)

dim tmprange as rangeset tmprange = cells(target.row(), 1).mergearea

'......

end function

goodluck!

3樓:綠水青山

sub bbb()

msgbox "aaa "

end sub

sub aaa()

call bbb

end sub

excel中vba如何在模組中自定義函式,定義好了之後如何在窗體中呼叫?謝謝

4樓:匿名使用者

在模組裡定義:

function aa(a)

aa=a

end function

窗體裡呼叫:

x=aa(1)

msgbox x

5樓:匿名使用者

vb函式分

baisub(無返回值)以及dufunction(有返回值)簡單範例

public function ss() as stringss = "我是

zhi"

end function

注意,想定dao義的函式能夠在窗體或別版的權模組呼叫,該函式必須是public的,也就是第一個關鍵字必須為public

function的呼叫很簡單,直接寫函式名和引數如 msgbox ss

而sub的呼叫直接call,如:

public sub ss()

ss = "我是"

end sub

呼叫call ss

另外一點需要注意,呼叫模組定義的函式,直接寫函式名。但如果呼叫窗體的函式,就得把窗體加上。比如,我要呼叫sheet1下的bb函式,則該寫成 call sheet1.bb

verilog中頂層模組例項引用多個模組時埠怎麼連線

假定sub module1和sub module2是已經定義好的兩個子模組,top是頂層。那麼子模組之間的連線可以之間用wire連線。頂層的輸入輸出也用wire連線進到子模組中。這是一般的,當然也有特殊的,比如雙向io等。module top in1,out1 input in1 output ou...

如何在stata中新增meta模組

黑我大老溼 樓上的方法我剛剛試過,管用的,我補充幾點體會 如果 spinst mais 這一步顯示有檔案安裝失敗的話,嘗試重新執行一遍。ssc install metadialog.pkg 這一步只有上述步驟全部完成沒有錯誤才會執行。若無法執行,則需要再來一遍 spinst mais 在stata選...

如何將VBA工程或模組獨立於Excel檔案儲存

魚木混豬喲 vba工程或模組,是無法脫離excel檔案儲存的,但是可以脫離執行這個工程的xls或xlsm檔案而儲存。儲存時選擇 載入項xla型別 的選項,即可儲存為.xla格式的檔案,如果在excel中啟用這個載入項,就可以在開啟的任意excel文件中使用這個vba工程。要維護它可以直接用excel...