簡體   English   中英

在Excel VBA上返回用戶定義的類型

[英]Returning user-defined types on Excel VBA

我已經擺弄Excel VBA已有一段時間了,但是我從未接受過任何正式的培訓。 我在XLSM模塊上有以下代碼:

Public Type ks_solution
    W As Integer
    NF As String
    ID As Integer
End Type

Public Sub MySub()
    //does some things
    MyKSSolution = MyFunction(params)
End Sub

Public Function MyFunction(params) as ks_solution
    //does stuff and returns a ks_solution
End Function

當我嘗試運行代碼時,VBA編譯器返回“只能在公共對象模塊中定義的用戶定義類型可以與變量強制轉換或從變量強制轉換或傳遞給后期綁定函數”錯誤。

任何幫助將不勝感激。

-尤里

嗯,沒關系。 看起來問題出在var聲明中。

我想

Dim v1, v2 as ks_solution

與...相同

Dim v1 as ks_solution, v2 as ks_solution

但顯然不是。 在第一種情況下,v1被聲明為Variant。 抱歉,慢慢來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM