PDA

View Full Version : سوال: اصلاح کد



محمد مهدي
سه شنبه 03 تیر 1393, 11:51 صبح
با سلام خدمت دوستان
کد زیرو که مشاهده میکنید از یکی از پستهای دیگه گرفتم و کار این کد اینه که عدد رو در یک رشته از تکست جدا میکنه ولی یه مشکل داره اینکه اگر رشته بصورت G15O1S1A5 تعریف بشه تنها عدد 15 را برمیگردونه و تا انتها رشته رو چک نمیکنه و اعداد رو جدا نمیکنه. میشه لطف کنید و این کد رو اصلاح کنید.
Function NumberInText(strNumAndText As String) As Long
Dim k As Integer, N As String
If Len(NumberInText) = 0 Then Exit Function
( For k = 1 To Len(strNumAndText
If IsNumeric(Mid(strNumAndText, k, 1)) Then
(N = N & Mid(strNumAndText, k, 1
Else
If Len(N) Then Exit For
End If
Next
"If N = "" Then N = "0
(NumberInText = CLng(N
End Function

Abbas Amiri
یک شنبه 08 تیر 1393, 21:38 عصر
با سلام خدمت دوستان
کد زیرو که مشاهده میکنید از یکی از پستهای دیگه گرفتم و کار این کد اینه که عدد رو در یک رشته از تکست جدا میکنه ولی یه مشکل داره اینکه اگر رشته بصورت G15O1S1A5 تعریف بشه تنها عدد 15 را برمیگردونه و تا انتها رشته رو چک نمیکنه و اعداد رو جدا نمیکنه. میشه لطف کنید و این کد رو اصلاح کنید.
Function NumberInText(strNumAndText As String) As Long
Dim k As Integer, N As String
If Len(NumberInText) = 0 Then Exit Function
For k = 1 To Len(strNumAndText)
If IsNumeric(Mid(strNumAndText, k, 1)) Then
N = N & Mid(strNumAndText, k, 1)
Else
If Len(N) Then Exit For
End If
Next
If N = "" Then N = "0"
NumberInText = CLng(N)
End Function


سلام

کافیست عبارت If Len(N) Then Exit For را حذف کنید.