我想從DAO記錄集中獲取數據類型。下面的代碼:DAO中的枚舉沒有常規的系統方法?
Public Function EditFormData(frm As Form)
Dim rst As DAO.Recordset
Dim fieldType as DAO.DataTypeEnum
Set rst = frm.RecordsetClone
rst.MoveFirst
fieldType = rst.Fields(0).Type
MsgBox fieldType.ToString
我得到一個無效的限定符錯誤的字段類型中的msgbox當我嘗試運行這一點,不知道爲什麼,因爲這是我首次涉足枚舉。
Docs聲明'Type'返回一個整數結果,而不是一個枚舉。另請參閱:http://allenbrowne.com/func-06.html – 2012-03-06 19:39:28
@TimWilliams我的理解是返回的整數對應於DAO.DataTypeEnum中的數據類型條目,所以我試圖獲取相應的字符串。然而,鏈接到的函數描述了每個值的硬編碼,並且它是字符串對應的,以便將整數從字符串轉換回字符串,基本上將內置的枚舉與該信息分離。我希望避免這樣做,但如果沒有簡單的方法,我可以。謝謝你的鏈接。 – Crimius 2012-03-06 19:47:20
VB中的枚舉[A]沒有那個方便的「ToString()」方法。在函數中手動編碼字符串值並不好玩,但幸運的是有人已經爲你做了... – 2012-03-06 20:59:08