tagCANDY CGI VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
VBレスキュー(花ちゃん) の Visual Basic 2010 用 掲示板(VB.NET 掲示板)
[ツリー表示へ]  [ワード検索]  [Home]

タイトル Re^2: 'System.InvalidCastException'
投稿日: 2007/04/24(Tue) 09:26
投稿者ひでと
ありがとうございました。
>
> Cast 可能かどうかを調べた上で Cast したほうが確実です。
> 実行コストも低くなると思います。
> .NET Framework のバージョンがわかりませんが、
> TryParse 等を使って調べたりとか。
以下で、できました。

    Public Function 文字to数字(ByVal 文字 As String) As Object
        Dim returnValue As Boolean
        文字to数字 = 文字
        If 文字 = "" Then Exit Function
        Dim r1 As Short : returnValue = Short.TryParse(文字, r1)
        If returnValue = True Then 文字to数字 = CShort(文字) : Exit Try

        Dim r2 As Integer : returnValue = Integer.TryParse(文字, r2)
        If returnValue = True Then 文字to数字 = CInt(文字) : Exit Try

        Dim r3 As Long : returnValue = Long.TryParse(文字, r3)
        If returnValue = True Then 文字to数字 = CLng(文字) : Exit Try

        Dim r4 As Single : returnValue = Single.TryParse(文字, r4)
        If returnValue = True Then 文字to数字 = CSng(文字) : Exit Try

        Dim r5 As Double : returnValue = Double.TryParse(文字, r5)
        If returnValue = True Then 文字to数字 = CDbl(文字) : Exit Try
    End Function

- 関連一覧ツリー をクリックするとツリー全体を一括表示します)

古いスレッドにレスはつけられません。