2017-04-21 123 views
0

我有一個以字符串形式返回值的函數。Excel宏將字段數據類型字符串更改爲長

Function Trimcell(cellvalue As varnant) As String 
    Trimcell = Replace(CStr(cellvalue), " ", "") 
End Function 

我想將數據類型字符串更改爲long。任何幫助。

+0

你試過了什麼?所有它應該採取的是改變函數的返回類型。 – dotNET

+0

我有一個函數..函數Trimcell(cellvalue as varnant)作爲字符串。 Trimcell = Replace(CStr(cellvalue),「」,「」)End function –

+0

我需要的函數應該返回Long而不是String。如果我在函數的返回數據類型中將字符串更改爲long,則拋出錯誤。 –

回答

0

你的函數改成這樣:

Function Trimcell(cellvalue As varnant) As Long 
    Trimcell = Val(Replace(CStr(cellvalue), " ", "")) 
End Function 
0

你有拼寫錯誤 - varnant而不是變異。

比使用Replace更好的選擇是使用Val,它從字符串中刪除空格,製表符和換行符,並返回Double。它也會停止讀取第一個非數字字符處的字符串,而不是它識別爲小數點分隔符的句點(。)。

正如你已經宣佈cellvalue As Variant你不應該需要CStr要麼。

Function Trimcell2(cellvalue As Variant) As Long 

    Trimcell = Val(cellvalue) 
End Function 
相關問題