شوقي ربيع قام بنشر مارس 6, 2015 قام بنشر مارس 6, 2015 بسم الله الرحمان الرحيم السلام عليكم تكملة لموضوع النص التنبئي على الكمبوبوكس http://www.officena....showtopic=59463 الموضوع السابق ذكره تم التطرق الى البحث داخر القائمة المنسدلة ذات عمود واحد الجديد اليوم هو البحث داخل القائمة المنسدلة بواسطة النص التنبئي لاكن مع وجود اكثر من عمود في القائمة تم عمل مثالين توضيحين الاول مطبق على الشيت اما الثاني مطبق على الفورم وكلاهما لهم نفس الوضيفة انما تم عمل المثالين ليتكون الفكرة وضحة واشمل في الاخير ارجو من الاعضاء تقديم ارائهم و ملاحضاتهم لنطور الموضوع اكثر ونصل الى افضل النتائج معا لرفع المستوى ******************* تحياتي للجميع تم تغير المرفق بعد 12 تحميل النص التنبئي.rar 3
عادل ابوزيد قام بنشر مارس 6, 2015 قام بنشر مارس 6, 2015 ما شاء الله ابداع يفوق الخيال ولا فى الاحلام جزاك الله كل خير وجعله فى ميزان حسناتك 1
إبراهيم ابوليله قام بنشر مارس 6, 2015 قام بنشر مارس 6, 2015 اخى واستاذنا شوقى فيه بس مشكله بسيطه بتحدث وهى ايه انه عند الضغط على زر اوك بدون الكتابه داخل الكوموبوكس يحدث خطأ وفيه كمان ان عند الكتابه داخل الكوموبوكس اكثر من حرف بردو بيحدث خطأ واعتقد ان الخطأ فى عد اضافة On Error Resume Next ولكنى طبعا مستنى تعديلك فانت دائما لديك الجديد تقبل تحياتى 1
شوقي ربيع قام بنشر مارس 6, 2015 الكاتب قام بنشر مارس 6, 2015 اخى واستاذنا شوقى فيه بس مشكله بسيطه بتحدث وهى ايه انه عند الضغط على زر اوك بدون الكتابه داخل الكوموبوكس يحدث خطأ وفيه كمان ان عند الكتابه داخل الكوموبوكس اكثر من حرف بردو بيحدث خطأ واعتقد ان الخطأ فى عد اضافة On Error Resume Next ولكنى طبعا مستنى تعديلك فانت دائما لديك الجديد تقبل تحياتى استاد ابراهم جزاك الله خير وبارك الله فيك هدا ما اريده بضبط من كل الاعضاء اعطاء ارائهم واستفسارتهم وتعقيباتهم لكي نحسن من مواضيعنا ونطورها اكثر تم حل المشكلة وتم تغير المرفق في المشاركة الاصلية
ياسر خليل أبو البراء قام بنشر مارس 6, 2015 قام بنشر مارس 6, 2015 لم يعمل هذا الملف أيضا معي .. ايه حكاية الأوفيس عندك ؟ ولا المشكلة عندي أنا ..
شوقي ربيع قام بنشر مارس 6, 2015 الكاتب قام بنشر مارس 6, 2015 لم يعمل هذا الملف أيضا معي .. ايه حكاية الأوفيس عندك ؟ ولا المشكلة عندي أنا .. لا اخي ياسر المشكلة عندي عند عمل اي ملف عندي يشتغل عادي وعند الغير لا تشتغل الاكواد لم اعرف اين المشكل بضبط لحد الان على العموم عدلت الملف من جهاز اخر وتم رفع الملف من جديد
إبراهيم ابوليله قام بنشر مارس 6, 2015 قام بنشر مارس 6, 2015 ياعمنا شوقى الله يهديك المرفق مش مرفق خالص ولا انت طمعت فيه ولا ايه الحكايه تقبل تحياتى
شوقي ربيع قام بنشر مارس 6, 2015 الكاتب قام بنشر مارس 6, 2015 ياعمنا شوقى الله يهديك المرفق مش مرفق خالص ولا انت طمعت فيه ولا ايه الحكايه تقبل تحياتى هههه ميغلاش عليكم غالي استادنا ابراهم المرفق موجود 1
الصـقر قام بنشر مارس 7, 2015 قام بنشر مارس 7, 2015 استاذى الفاضل شوقى ربيع أبداع منقطع النظير تقبل تحياتى
إبراهيم ابوليله قام بنشر مارس 7, 2015 قام بنشر مارس 7, 2015 اخى واستاذنا شوقى فيه بس مشكله بسيطه بتحدث وهى ايه انه عند الضغط على زر اوك بدون الكتابه داخل الكوموبوكس يحدث خطأ وفيه كمان ان عند الكتابه داخل الكوموبوكس اكثر من حرف بردو بيحدث خطأ واعتقد ان الخطأ فى عد اضافة On Error Resume Next ولكنى طبعا مستنى تعديلك فانت دائما لديك الجديد تقبل تحياتى استاد ابراهم جزاك الله خير وبارك الله فيك هدا ما اريده بضبط من كل الاعضاء اعطاء ارائهم واستفسارتهم وتعقيباتهم لكي نحسن من مواضيعنا ونطورها اكثر تم حل المشكلة وتم تغير المرفق في المشاركة الاصلية اخى شوقى يتم التاكيد على حدوث نفس الخطأ يرجى اعادة رفع الملف الصحيح تقبل تحياتى
KHMB قام بنشر مارس 7, 2015 قام بنشر مارس 7, 2015 السلام عليكم ورحمة الله الاستاذ شوقي الملف يعمل عندي أوفيس 2013
إبراهيم ابوليله قام بنشر مارس 10, 2015 قام بنشر مارس 10, 2015 اخى واستاذنا شوقى فيه بس مشكله بسيطه بتحدث وهى ايه انه عند الضغط على زر اوك بدون الكتابه داخل الكوموبوكس يحدث خطأ وفيه كمان ان عند الكتابه داخل الكوموبوكس اكثر من حرف بردو بيحدث خطأ واعتقد ان الخطأ فى عد اضافة On Error Resume Next ولكنى طبعا مستنى تعديلك فانت دائما لديك الجديد تقبل تحياتى استاد ابراهم جزاك الله خير وبارك الله فيك هدا ما اريده بضبط من كل الاعضاء اعطاء ارائهم واستفسارتهم وتعقيباتهم لكي نحسن من مواضيعنا ونطورها اكثر تم حل المشكلة وتم تغير المرفق في المشاركة الاصلية اخى شوقى يتم التاكيد على حدوث نفس الخطأ يرجى اعادة رفع الملف الصحيح تقبل تحياتى ارجو الافاده
شوقي ربيع قام بنشر مارس 10, 2015 الكاتب قام بنشر مارس 10, 2015 اخى واستاذنا شوقى فيه بس مشكله بسيطه بتحدث وهى ايه انه عند الضغط على زر اوك بدون الكتابه داخل الكوموبوكس يحدث خطأ وفيه كمان ان عند الكتابه داخل الكوموبوكس اكثر من حرف بردو بيحدث خطأ واعتقد ان الخطأ فى عد اضافة On Error Resume Next ولكنى طبعا مستنى تعديلك فانت دائما لديك الجديد تقبل تحياتى استاد ابراهم جزاك الله خير وبارك الله فيك هدا ما اريده بضبط من كل الاعضاء اعطاء ارائهم واستفسارتهم وتعقيباتهم لكي نحسن من مواضيعنا ونطورها اكثر تم حل المشكلة وتم تغير المرفق في المشاركة الاصلية اخى شوقى يتم التاكيد على حدوث نفس الخطأ يرجى اعادة رفع الملف الصحيح تقبل تحياتى ارجو الافاده السلام عليكم لديا مشكلة في الاوفيس عندي ساحاول الوصول الى جهاز اخر وارفع الملف
شوقي ربيع قام بنشر مارس 10, 2015 الكاتب قام بنشر مارس 10, 2015 السلام عليكم الملف الاخير بعد التعديل وتصحيح الاخطاء واي استفسارات انا في الخدمة تحياتي للجميع النص التنبئي معدل.rar 1
شوقي ربيع قام بنشر مارس 11, 2015 الكاتب قام بنشر مارس 11, 2015 وأااااااااااو هو فيه كده ياجدعان استاذ شوقي .. حقا أبدعت ، جزاك الله كل خير ما شاء الله ابداع يفوق الخيال ولا فى الاحلام جزاك الله كل خير وجعله فى ميزان حسناتك رررررررررررررررررررائع اخي شوقي استاذى الفاضل شوقى ربيع أبداع منقطع النظير تقبل تحياتى السلام عليكم ورحمة الله الاستاذ شوقي الملف يعمل عندي أوفيس 2013 جزاكم الله خيرا وبارك الله فيكم كل باسمه تحياتي للجميع
إبراهيم ابوليله قام بنشر مارس 12, 2015 قام بنشر مارس 12, 2015 اخى شوقى بالفعل الملف يعمل بصوره جيده جدا ولكن فى المره الاولى عند حدوث الخطأ استعنت انا بالكود On Error Resume Next فهل بالفعل هذا السطر له علاقه بحل المشكله ام لا ----------------------------------------------------- الاهم اخى الكريم ماذ لو اردنا التطور اكثر فاكثر ......................................... ماذا لو كان لدينا اكثر من عمود نريد البحث فيه العمود الاول مثلا يكون البحث بالاسم العمود الثالث بحث برقم الموظف العمود السادس بحث برقم السياره ----------------------------------- تقبل تحياتى
شوقي ربيع قام بنشر مارس 12, 2015 الكاتب قام بنشر مارس 12, 2015 اخي ابو ليله On Error Resume Next عند استخدامه فأنت تقول للفيوجال ابتداءا من هذا السطر وعندما يقابلك اي خطاء تخطاه وانتقل لسطر الذي بعده وشخطيا لا احبذ استخدامه الا لضرورة القصوى الخطاء في الملف كان كا الاتي اولا نشرح الكود المستعمل لكي تفهم الامر الكود ببساطة يعتمد على المصفوفات كما تلاحظ المصفزفة Ary هي مصفوفة الرئيسية التي خزنا فيها كامل بيانات الداتا Ary = ws.Range("A2:D" & lrw).Value ثم انشئة مصفوفة اخرى Aryy من اجل البحث عن القيم من المصفوفة الاولة و تخزين النتائج المطابقة لشرط البحث فيها For i = LBound(Ary) To UBound(Ary) If UCase(Ary(i, 1)) Like d Then e = e + 1: ReDim Preserve Aryy(1 To 3, 1 To e) Aryy(1, e) = Ary(i, 1) Aryy(2, e) = Ary(i, 2) Aryy(3, e) = Ary(i, 3) End If Next i حيث LBound(Ary) هو الحد الاول للمصفوفة UBound(Ary) الحد الاخير للمصفوفة If UCase(Ary(i, 1)) Like d Then هو شرط البحث حيث d = UCase(Me.ComboBox1) & "*" اي ما يكتب داخل الكمبوبوكس واستعملنا هذا السطر ReDim Preserve Aryy(1 To 3, 1 To e) لتغيير حجم المصفوفة الثانية دون فقدان البيانات التي تحويها لاننا نعتمد على الحلقات التكرارية في البحث فكما تلاحظ كل ما يتحقق الشرط نملئ المصفوفة الثانية بالبيانات التي حققت الشرط وذالك في الاسطر Aryy(1, e) = Ary(i, 1) Aryy(2, e) = Ary(i, 2) Aryy(3, e) = Ary(i, 3) كل سطر يملئ احد اعمدة المصفوفة علما من انا مصفوفتنا مكونة من ثلاثة اعمدة اما المتغير e ما فائدتة ؟ فائدته هي معرفة عدد اسطر المسفوفة الثانية فعند اكتمال دورة الحلة التكرارية والخروج منها المتغير e ينبانا بعدد الاسطر التي خزنت في المصفوفة الثانية وما فائدت هذا الكلام ؟ فائدته هي حسب الكود التالي If e > 0 Then If UBound(Aryy, 2) > 1 Then Me.ComboBox1.List = Application.Transpose(Aryy) Else Dim c(1 To 1, 1 To 3) c(1, 1) = Aryy(1, 1) c(1, 2) = Aryy(2, 1) c(1, 3) = Aryy(3, 1) Me.ComboBox1.List = c End If Me.ComboBox1.DropDown End If If e > 0 Then يعندي ان عدد اسطر المسفوفة الثانية ميسويش الصفر بعده ادرجنا السطر الثاني If UBound(Aryy, 2) > 1 Then وهو ايضا عبارة عن شرط ومعناه انه ادذا كان عدد اسطر المصفوفة الثانية اكثر من سطر ف Me.ComboBox1.List = Application.Transpose(Aryy) اي عبئ لنا مباشرتا محتوى المصفوفة الثانية في الكمبوبوكس الخاصتنا مع استخدامنا لدالة Transpose لقلب نطاق اعمدة المصفوى الى افقى بدل مما هي عليه عمودية وهذه النتيجة تكون عندما يكون لدينا اكثر من صنف لهم نفس اول الاحرف اما اذا كان عدد اسطر المصفوفة الثانية يساوي الواحد مالذي سيحدث ؟ سيكون لدينا نتيجة واحدة وهي الصنف ثم الكية ثو السعر حتى مع استخدام Transpose ستكون النتيجة في الكمبوبوكس ماسبق ذكره لاكن تحت بعضهم البعض في القائمة المنسدلة اذا استعنا بمصفوفة ثالثة اسميناها c لاكنها ليست كا لمصفوفتين السابقتين السابقتين هما مصفوفتان ديناميكية اما الاخيرة فهي مصفوفة ثابتة الحجم حيث تحوي على عمود واحد و ثلاثة اسطر كما هو في تعريفها دا خل الكود Dim c(1 To 1, 1 To 3) ثما قمنا بتعبئة المصفوفة الثالثة بالبيانات التي حصلنا عليها في المصفوفة الثانية (ولا تنسى انها تحوي على سطر واحد في هذه الحالة) c(1, 1) = Aryy(1, 1) c(1, 2) = Aryy(2, 1) c(1, 3) = Aryy(3, 1) ثم قمنا بنقل محتوى المصفوفة الثالثة الى الكمبوبوكس . . . . اذا بعد شرح الكود اين الخطاء الذي كان من قبل في الملف الاول لو تلاحظ في الملف الاول ان الكود الخاص ب الحالة الاخيرة اي عندما تكون النتيجة سطر واحد كان هكذا Dim c(1 To 1, 1 To 2) c(1, 1) = Aryy(1, 1) c(1, 2) = Aryy(2, 1) c(1, 3) = Aryy(3, 1) وهذا خطاء لاننا نحاول تعباة مصفوفة ذات سطرين بثلاثة اسطر وهو الخطاء الذي كان في الملف حيث اني عرفت المصفوفة الاخيرة الثابتة الحجم ابانها تحوي سطرين Dim c(1 To 1, 1 To 2) بدل ثلاثة اسطر Dim c(1 To 1, 1 To 3) . . . . (ماذ لو اردنا التطور اكثر فاكثر) الامر ابسط مما تتصور فقط نزيد في ابعاد المصفوفات المستعملة في الكود هذا مثال ل سبعة اعمدة For i = LBound(Ary) To UBound(Ary) If UCase(Ary(i, 1)) Like d Then e = e + 1: ReDim Preserve Aryy(1 To 7, 1 To e) Aryy(1, e) = Ary(i, 1) Aryy(2, e) = Ary(i, 2) Aryy(3, e) = Ary(i, 3) Aryy(4, e) = Ary(i, 4) Aryy(5, e) = Ary(i, 5) Aryy(6, e) = Ary(i, 6) Aryy(7, e) = Ary(i, 7) End If Next i If e > 0 Then If UBound(Aryy, 2) > 1 Then Me.ComboBox1.List = Aryy 'Application.Transpose(Aryy) Else Dim c(1 To 1, 1 To 7) c(1, 1) = Aryy(1, 1) c(1, 2) = Aryy(2, 1) c(1, 3) = Aryy(3, 1) c(1, 4) = Aryy(4, 1) c(1, 5) = Aryy(5, 1) c(1, 6) = Aryy(6, 1) c(1, 7) = Aryy(7, 1) Me.ComboBox1.List = c End If Me.ComboBox1.DropDown End If Else في الاخير ارجو ان يكون الشرح مفهوم واي استفسارات اخرى لاتتردد في السؤال تحياتي لجميع
ياسر خليل أبو البراء قام بنشر مارس 12, 2015 قام بنشر مارس 12, 2015 بسم الله ما شاء الله أخي شوقي موسوعة .... في انتظار حلقة منك لشرح المصفوفات Arrays من البداية نظراً لأهميتها القصوى وفائدتها الكبيرة وقلة علمنا بها
شوقي ربيع قام بنشر مارس 12, 2015 الكاتب قام بنشر مارس 12, 2015 بسم الله ما شاء الله أخي شوقي موسوعة .... في انتظار حلقة منك لشرح المصفوفات Arrays من البداية نظراً لأهميتها القصوى وفائدتها الكبيرة وقلة علمنا بها غالي والطلب رخيس من عنيا الاثنين فقط يتاح لي بعض الوقت وساعمل على الموضوع تحياتي
إبراهيم ابوليله قام بنشر مارس 16, 2015 قام بنشر مارس 16, 2015 اخى واستاذنا شوقى الشرح وافى جدا والموضوع بجد اكبر فكما قال اخانا ياسر اننا لدينا قله فى المعلومات عن المصفوفات ولكن انا لدى جهل بها فى انتظار الدرس ان شاء الله تقبل تحياتى
الردود الموصى بها