منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب
كود استبدال عدد - نسخة قابلة للطباعة

+- منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب (http://vb4arb.com/vb)
+-- قسم : قسم أسئلة واستفسارات الأعضاء - المنتدى القديم (http://vb4arb.com/vb/forumdisplay.php?fid=94)
+--- قسم : قسم Visual Basic 6 وما قبله (http://vb4arb.com/vb/forumdisplay.php?fid=167)
+--- الموضوع : كود استبدال عدد (/showthread.php?tid=9728)



كود استبدال عدد - عبدالله الصافي - 22-07-13

اخواني الكرام السلام عليكم.

عندي textbox بها اعداد مثل 123 456 2 56 8765

واركز ان تلك الأعداد تختلف من حيث عدد ارقامها فمنها عدد مكون من رقم او رقمين او ثلاثة او اربعة

يفصل بين كل عدد مسافة واحدة واركز ان يفصل بين كل عدد وليس رقم مسافة واحدة

المطلوب كود يعطيني كل عدد علي حدة أي كود يقوم بأستبدال كل عدد برقم اخر

مثلا الكود يقوم بأستبدال كل عدد برقم انا احدده وليس له ترتيب او نظام محدد



كود استبدال عدد - 3booody - 22-07-13

[COLOR="#800000"]السلام عليكم ورحمة الله وبركاته
بحسب استخدامي لفيجول بيسك دوت نت استخدم هذه الطريقه
[/COLOR]
كود :
For Each num As String In Me.TextBox1.Text.Split(" ")
            num = Replace(num, "23", "8")
            num = Replace(num, "235", "0")
            Me.ListBox1.Items.Add(num)
        Next
حاول تغير الكود على فيجول 6 لان بصراحة نسيت الكثير عن فيجول 6


كود استبدال عدد - 3booody - 22-07-13

قد نسيت شي مهم واعتذر وهو لاتستخدم الدالة Replace والسبب اذا حاولت تغير رقم 10 مثلآ الى 2 وصادف ان الرقم كان 100 راح يحول ال10 الى2 لذلك استخدم عبارة if
كود :
If num = "100" Then num = "1"



كود استبدال عدد - عبدالله الصافي - 22-07-13

شكرا لتكرمك بالرد اخي الكريم

احاول التعديل عليه ان شاء الله



كود استبدال عدد - عبدالله الصافي - 22-07-13

اخواني الكرام وجدت عندي الكود علي الجهاز فقررت ارفعه للأستفادة لباقي الأعضاء
كود :
Dim MyText() As String
Private Sub Command1_Click()
On Error Resume Next
MyText() = Split(Text1.Text, " ")
For i = 0 To Val(MyText(Index))
MsgBox MyText(i)
Next
End Sub



كود استبدال عدد - VB_Coder - 22-07-13

السلام عليكم

جرب هذه الدالة :

كود :
Private Function ReplaceNumber(NumberIndex As Integer, NewValue As String) As Boolean

Dim Numbers() As String
Dim I As Integer

Numbers = Split(Trim$(Text1.Text), " ")

If UBound(Numbers) > -1 Then

   If NumberIndex > LBound(Numbers) + 1 And _
      NumberIndex < UBound(Numbers) + 1 Then
      
      Text1.Text = ""
      
      For I = LBound(Numbers) To UBound(Numbers)
          If NumberIndex = I + 1 Then
             Text1.Text = Text1.Text & Trim$(NewValue) & " "
          Else
             Text1.Text = Text1.Text & Numbers(I) & " "
          End If
      Next
      
      Text1.Text = Trim$(Text1.Text)
      ReplaceNumber = True
      Exit Function
  
   Else
  
      ReplaceNumber = False
      Exit Function
  
   End If
  
Else

   ReplaceNumber = False
   Exit Function
  
End If

End Function

Private Sub Command1_Click()

MsgBox ReplaceNumber(2, "542")

End Sub

- تحياتي .


كود استبدال عدد - Top GreaT - 22-07-13

حلك صحيح اخي الصافي بإستخدام الدالة Split
ولكن يوجد خطأ في كتابه الكود
عدل الكود الى هذا
كود :
[align=left]
Dim MyText() As String
MyText() = Split(Text1.Text, " ")
For i = 0 To UBound(MyText)
MsgBox MyText(i)
Next
[/align]

بالتوفيق