返回列表 上一主題 發帖

[發問] 如何將vba模組做成函數指令,嵌到系統裡

[發問] 如何將vba模組做成函數指令,嵌到系統裡

請教各位大大
小弟在寫函數式,因找不到像vba裡Split指令的功能,所以用vba寫了一個回傳巨集,如下
請問要如何將SplitRun做成 excel裡的函數指令呢??  如sum、avg.....等函數可直接叫用,而不是每次都要寫一次模組

儲存格
H10 : 5100-100421133
H11 :=splitrun(H10,"-",1) = 5100

vba 模組 如下

Function SplitRun(指定, 符號, 回傳序號)

  Dim StrRun
  StrRun = Split(指定, 符號)
   SplitRun = StrRun(回傳序號 - 1)

End Function
是學程式而不是要程式,是進步的基礎

回復 1# 暗黑


    存成增益集xla,載入增益集
學海無涯_不恥下問

TOP

本帖最後由 luhpro 於 2010-7-23 00:06 編輯

你可參考 VBA 的說明中關於 MacroOptions 函數的用法與範例.

Sub AddUDFToCustomCategory()
    Application.MacroOptions Macro:="SplitRun", Description:="巨集的說明", Category:="我的類別"
End Sub

Function SplitRun(指定, 符號, 回傳序號)

  Dim StrRun
  StrRun = Split(指定, 符號)
   SplitRun = StrRun(回傳序號 - 1)
End Function

此法中所建立出來的函數只能用於該程式所在的檔案,
但存檔後即可一直使用而不再需要執行該程式.

TOP

再請教..
SplitRun已存成增益集並載入了,
那要如何在vba編輯器中,不要出現SplitRun增益集呢
是學程式而不是要程式,是進步的基礎

TOP

本帖最後由 ANGELA 於 2010-7-29 10:42 編輯
再請教..
SplitRun已存成增益集並載入了,
那要如何在vba編輯器中,不要出現SplitRun增益集呢
暗黑 發表於 2010-7-23 08:16



       我也很想知道是否能穩藏增益集,加多了找起來會感覺很亂.需且一般也不會修改增益集.
    還有有時在按F8檢查程式碼時,執行到中間時會跳去執行增益集,真怪.

TOP

我也很想知道是否能穩藏增益集,加多了找起來會感覺很亂.需且一般也不會修改增益集.
    還有 ...
ANGELA 發表於 2010-7-29 10:21

將程式存於Personal.xls (個人巨集活頁簿) 也是有增益集的效果

TOP

        靜思自在 : 時時好心就是時時好日。
返回列表 上一主題