返回列表 上一主題 發帖

[發問] 判斷是否為數字型態最快的方法?

本帖最後由 bobomi 於 2015-4-5 15:47 編輯

dim d as double

    For Each e In myArray  '確定要的值 含0的話 用這個
        check = IsNumeric(e)
        If check Then
           d = e
           check = d >= 0 And (d - Fix(d)) = 0
        End If
    Next
'====
    For Each e In myArray  '確定要的值 不含0的話 用這個
        d = Val(e)
        If d > 0 Then
           check = (d - Fix(d)) = 0
        End If
    Next

TOP

[如果要達到這種只取出純數字]

運算次數少的話用你那個就好了
運算次數多的話 , 用正則應該是還可以快個2,3倍

但下面也會比你快
      k = Asc(Mid(e, i, 1))
      check = k >= 48 And k <= 57

TOP

        靜思自在 : 【時間成就一切】時間可以造就人格,可以成就事業,也可以儲積功德。
返回列表 上一主題