منتدى فيجوال بيسك لكل العرب | منتدى المبرمجين العرب

نسخة كاملة : طلب من ذوي الخبرة جزاكم الله كل خير
أنت حالياً تتصفح نسخة خفيفة من المنتدى . مشاهدة نسخة كاملة مع جميع الأشكال الجمالية .
السلام عليكم ورحمة الله وبركاته

اخواني ذوي الخبرة في البرمجة

محتاج برنامج مقارنة عمله كالتالي

يكون في البرنامج ثلاثة تكست 1 2 3

فمثلا كان موجودا في التكست رقم 1 عدة أسماء مختلفة على سبيل المثال محمد؛ أحمد؛ خليل ؛عمر وهكذا بشكل عمودي

وايضا في نفس الوقت كان موجودا في تكست رقم 2 عدة أسماء مثلا أحمد؛ سليمان؛ خليل أيضا بشكل عمودي

عند الضغط على على الكوماند يخرج في تكست رقم ثلاثة الاسماء الجديدة المختلفة عن تكست رقم 2 وهي محمد ؛ عمر ؛بشكل عمودي

اتمنى من اخواني مساعدتي ولكم جزيل الشكر والامتنان
السلام عليكم

- هذا هو الكود :

كود :
Private Sub Command1_Click()

Dim zNames1() As String
Dim zNames2() As String

zNames1 = Split(Trim$(Text1.Text), vbCrLf)
zNames2 = Split(Trim$(Text2.Text), vbCrLf)

If UBound(zNames1) > -1 And UBound(zNames2) > -1 Then

   Dim I, N As Integer
  
   Text3.Text = ""
  
   For I = LBound(zNames1) To UBound(zNames1)
  
       For N = LBound(zNames2) To UBound(zNames2)
           If Trim$(zNames1(I)) = Trim$(zNames2(N)) Then
              Exit For
           Else
              If N = UBound(zNames2) Then
                 Text3.Text = Text3.Text & Trim$(zNames1(I)) & vbNewLine
              End If
           End If
       Next
      
   Next
      
End If

End Sub

- تحياتي .
بارك الله فيك يا أخي وزادك من علم الدين والدنيا
نعم هو المطلوب
كود ممتاز شكرا لكم
السلام عليكم...

إذا كنت تقوم بهذا الأمر عدة مرات في برنامجك فربما تفيدك الوحدة المرفقة (Class Module) باسم TSet و التي تمثل مجموعة أو فئة (التي يمكن إجراء عمليات التقاطع و الاتحاد و الطرح عليها).

1. أضف الوحدة المسماة TSet.cls (في المرفقات) إلى المشروع (يحتوي الكود على توضيحات للعمليات بالعربي).
2. الكود يكون كالتالي:
كود :
Private Sub Command1_Click()
    Dim MySet1 As New TSet
    Dim MySet2 As New TSet
    
    MySet1.SetItemsByArray Split(Text1.Text, vbCrLf)
    MySet2.SetItemsByArray Split(Text2.Text, vbCrLf)

    Text3.Text = MySet1.Subtract(MySet2).AsString(vbCrLf)
    
    Set MySet1 = Nothing
    Set MySet2 = Nothing
End Sub

نرجو الاستفادة و السلام.
بارك الله فيك أخي ناجي
لقد قام أخي VB_Coder جزاه الله كل خير بالواجب
نسأل الله ان يزيدكم من علمه