اذهب الي المحتوي
أوفيسنا

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


الردود الموصى بها

السلام عليكم ورحمة الله وبركاته

الاخوه الافاضل

لدى ليست بوكس بها حوالى اكثر من 30سطر

ولدى عدد 11 تيكست بوكس

اريد عند تحديد بعض السطور فى الليست بوكس

وعند الضغط على زر نقل

يتم نقل بيانات الليست المحدده  الى التيكست بوكس

..............................................................

مثال توضيحى

نفترض اننى قمت بتحديد السطر السطور الاتيه

السطر رقم 4-5-10-15-20-25-30

اريد نقل هذه السطور الى التيكست دون وجود فراغات بالتيكست

تقبلو تحياتى

TRS LIST.rar

رابط هذا التعليق
شارك

السلام عليكم

اتفضل الحل ... بالتعديل الاتى

1- التكست بوكس الاصلية كانت مش مترقمة بالترتيب ... اعدت ترقيمها

2- اضفت جزء من الكود لتنظيف التكست بوكس قبل البدء فى ملئها

3- الخطأ البرمجى اللى كان عندك انك كنت بتستعمل نفس المتغير الى بيعبر عن السطر اللى انت مختاره من الليست بوكس  فى ترقيم التكست بوكس .... يعنى لو انت مختار اول سطر مثلا ... ده رقمه 0 ... كان هايدور على textbox0 وطبعا مش لاقيه .. وده اول خطأ ..

اما لو  كان اختر 1، 5، .... كان ها يكتب فى textbox1 , textbox5 وها يترك الباقى فاضى , والحل هنا فى تخصيص متغير جديد حسب تحقق شرط الاختيار

 

TRS LIST.rar

  • Like 1
رابط هذا التعليق
شارك

السلام عليكم

اتفضل الحل ... بالتعديل الاتى

1- التكست بوكس الاصلية كانت مش مترقمة بالترتيب ... اعدت ترقيمها

2- اضفت جزء من الكود لتنظيف التكست بوكس قبل البدء فى ملئها

3- الخطأ البرمجى اللى كان عندك انك كنت بتستعمل نفس المتغير الى بيعبر عن السطر اللى انت مختاره من الليست بوكس  فى ترقيم التكست بوكس .... يعنى لو انت مختار اول سطر مثلا ... ده رقمه 0 ... كان هايدور على textbox0 وطبعا مش لاقيه .. وده اول خطأ ..

اما لو  كان اختر 1، 5، .... كان ها يكتب فى textbox1 , textbox5 وها يترك الباقى فاضى , والحل هنا فى تخصيص متغير جديد حسب تحقق شرط الاختيار

 

TRS LIST.rar

اخى واستاذى اسامه

بالفعل كما قلت

وحل ممتاز بارك الله فيك

نسأل الله ان يزيدك من فضله وعلمه

تقبل تحياتى

رابط هذا التعليق
شارك

اخى اسامه

انا استخدمت الكود التالى

لعدم تنفيذ شئ اذا كانت عدد السطور المحدده

تتعدى 11 سطر

For Ii = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(Ii) = True Then
    If ListBox1.Selected(Ii) Then H1 = H1 + 1
    End If
Next
If H1 > 11 Then
MsgBox "يجب الا يتعدى عدد السطور المحدده 11سطر": Exit Sub
End If

فهل يوجد كود اسهل وختصر اكثر من هذا الكود

وبالتالى اصبح الكود كالاتى

For Ii = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(Ii) = True Then
    If ListBox1.Selected(Ii) Then H1 = H1 + 1
    End If
Next
If H1 > 11 Then
MsgBox "يجب الا يتعدى عدد السطور المحدده 11سطر": Exit Sub
End If
H = 0
For I = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(I) = True Then
    H = H + 1
   Me.Controls("a" & H).Value = ListBox1.List(I, 0)
   Me.Controls("b" & H).Value = ListBox1.List(I, 1)
   Me.Controls("c" & H).Value = ListBox1.List(I, 2)
   Me.Controls("d" & H).Value = ListBox1.List(I, 3)
      End If
Next I

تقبل تحياتى

رابط هذا التعليق
شارك

السلام عليكم

لاختصار الكود... مش لازم تحط العداد ده الاول ... سيبه ينقل ولما العدد يعدى 11 يبلغه انه تم نقل 11 سجل فقط

 

For Ii = 0 To ListBox1.ListCount - 1
H = 0
For I = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(I) = True Then
    H = H + 1
   If H1 > 11 Then MsgBox "لقد تم نقل بيانات 11سطر فقط (اقصى عدد يمكن اختياره)": Exit Sub

   Me.Controls("a" & H).Value = ListBox1.List(I, 0)
   Me.Controls("b" & H).Value = ListBox1.List(I, 1)
   Me.Controls("c" & H).Value = ListBox1.List(I, 2)
   Me.Controls("d" & H).Value = ListBox1.List(I, 3)
      End If
Next I

 

تم تعديل بواسطه أسامة البراوى
  • Like 1
رابط هذا التعليق
شارك

اخى اسامه

مشكورا على الرد والمتابعه للموضوع

ولكن هل يمكن ترحيل البيانات اسفل اخر تيكست بها بيانات

بمعنى

لو اننى قمت بتحديد سطرين

ثم ضغطت زر الترحيل

ستصبح التيكست بوكس 1 , 2  مملوءه بالبيانات

ثم لو قمنا بالضغط على الزر مره اخرى

يتم الترحيل بدايه من التيكست بوكس رقم3

اتمنى ان اكون استطعت توصيل الفكره

تقبل تحياتى

رابط هذا التعليق
شارك

السلام عليكم

طلبك بسيط .... (لكن يجب التأكد اولا من ازالة بادئة التنظيف اللى كنا اضفناها مسبقا)  ثم تعديل العداد كما يلى واضافة السطر  الثانى .... حيث يقوم بفحص التكست بوكس حتى يصل الى اول تكست بوكس فاضى لكى يملأ البيانات.

1: H = H + 1

if  Me.Controls("a" & H).Value <>"" then GoTo 1

 

تم تعديل بواسطه أسامة البراوى
  • Like 1
رابط هذا التعليق
شارك

اخى اسامه

بالفعل هذه هو المطلوب

بارك الله فيك

.................................

لى طلب اخر

ماذا لو كان لدى اكثر من تيكست بوكس

على شكل اعمده

مثلا 3 اعمده

من تيكست بوكس a1 الى تيكست بوكس a12

من تيكست بوكس b1 الى تيكست بوكس b12

من تيكست بوكس c1 الى تيكست بوكس c12

فانا قمت باستخدام هذه الكود

H = 0
For I = 0 To ListBox1.ListCount - 1
    If ListBox1.Selected(I) = True Then
1:         H = H + 1

   If H > I Then MsgBox "يجب الا يتعدى عدد السطور المحدده 11سطر": Exit Sub
If Me.Controls("a" & H).Value <> "" Then GoTo 1
   Me.Controls("a" & H).Value = ListBox1.List(I, 0)
If Me.Controls("b" & H).Value <> "" Then GoTo 1
   Me.Controls("b" & H).Value = ListBox1.List(I, 1)
If Me.Controls("c" & H).Value <> "" Then GoTo 1
   Me.Controls("c" & H).Value = ListBox1.List(I, 2)
If Me.Controls("d" & H).Value <> "" Then GoTo 1
   Me.Controls("d" & H).Value = ListBox1.List(I, 3)
      End If
Next I

فهل لدى حضرتك كود افضل من هذا

تقبل تحياتى

 

تم تعديل بواسطه إبراهيم ابوليله
رابط هذا التعليق
شارك

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • اضف...

Important Information