السلام عليكم
اخوتي الكريرام
يوجد لدي مربع سرد
حين يتم اختيار كلمة اصنف يتم اظهار مربع A و B
ويكون مربع C مخفي
وحين يتم اختيار كلمة المورد يتم اظهار مربع C ويكون مربع A و B مخفي
كيف يتم ذالك
ارجوا المساعده
تفضل هذا كود النموذج :)
Private Sub Ctl1_AfterUpdate()
Select Case Me.Ctl1
Case "الصنف"
Me.a.Visible = True
Me.b.Visible = True
Me.c.Visible = False
Case "المورد"
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = True
End Select
End Sub
Private Sub Form_Load()
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = False
End Subجعفر
اشكر اخي الكريم
هل من الممكن تطبيق في المثال المرفق
اخي الفاضل :)
كل اللي عليك عمله هو نسخ الكود من مشاركتي اعلاه ، والصاقه في كود نموذجك ، ومافي شي أخر :)
جعفر
اشكرك اخي الكريم
ولكن لم اتمكن من نسخ الكود بشكل سريع
تم عملية انسخ عن طيق اقتباس للمشاركه
واخذ الكون منها بشكل سليم
شكر ا لك
:)
اخي العزيز
هناك مشكلة
وهي حين تجربه المثال
نجد ان الخانتا مخفيه ولا تظهر البيانات
وكاني لم اقم بالاختيار
ارجوا تجربه وايجاد حل لهذه المشكلة
ممكن صورة من المشكلة :)
جعفر
يعني قصدك:
ان البرنامج شغال كما طلبت:
orphan94 كتب:حين يتم اختيار كلمة اصنف يتم اظهار مربع A و Bويكون مربع C مخفي
وحين يتم اختيار كلمة المورد يتم اظهار مربع C ويكون مربع A و B مخفي
والآن تريد البرنامج يعطيك النتيجة عند فتح النموذج :)
استخدم هذا الكود:
Private Sub Form_Load()
Call Ctl1_AfterUpdate
End Sub
بدلا عن
Private Sub Form_Load()
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = False
End Subجعفر
اخي العزيز لم تفهم طلبي
حين يتم اختيار كلمة اصنف يتم اظهار مربع A و B
ويكون مربع C مخفي
وحين يتم اختيار كلمة المورد يتم اظهار مربع C ويكون مربع A و B مخفي
جميل جدا
لكن المشكلة
تم اختيار كلمة صنف
وتم كتابه داخل مربع A و B
الى الان ممتاز
المشكلة
حين اغلاق النموذج وفتحه من جديد
لا يظهر مربع A و B
وخاصه ان تم اختيار اصنف
وكاني لم اقم بكتابه أي شي في مربع A و Bويجب ان اختاره من جديد لكي تظهر البينات التي تم كتابتها من قبل
هذا بالضبط ما يفعله الكود في مشاركتي السابقة :)
جعفر
الافضل استخدام حث "الحالي" في النموذج ، بدل حدث "عند التحميل" والذي اعطيتك سابقا؟
Private Sub Form_Current()
On Error GoTo err_Form_Current
Call Ctl1_AfterUpdate
Exit Sub
err_Form_Current:
If Err.Number = 3044 Then
Resume Next
Else
MsgBox Err.Number & vbCrLf & Err.Description
End If
End Subجعفر
تم تعديل هذه المشاركة بواسطة orphan94 في 11 سبتمبر 2014 في 22:39
اشكرك اخي العزيز
ولكن هناك مشكلة وهي
حين اضافه جديد
يكون ضاهر اخر مربع تم فتح
وهذا ليس مناسب
ويجب ان يكون مخفي وليس ضاهر
حين اضافه جديده
الله يطول في عمرك اخوي :)
ياريت تخبرني كل المطلوب مرة واحدة وما تعطينا الطلبات بالقطارة :(
لأن المبرمج انت ، وانت فاهم تفاصيل برنامجك ، وإما نحن فنحاول مساعدتك فقط في السؤال اللي تطرحه ، وما نتطرق لبقية البرنامج ، ولا حتى نعرفه :(
تفضل هذه الاضافة التي طلبتها :)
حط هذا الكود بدل اللي في مشاركتي السابقة:
Private Sub Form_Current()
On Error GoTo err_Form_Current
If Me.NewRecord Then
Me.Ctl1 = ""
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = False
Else
Call Ctl1_AfterUpdate
End If
Exit Sub
err_Form_Current:
If Err.Number = 3044 Then
Resume Next
Else
MsgBox Err.Number & vbCrLf & Err.Description
End If
End Subجعفر
اشكرك اخي الكريم
حياك الله :)
ارجو المساعده
تفضل :)
الكود الجديد:
Private Sub Ctl1_AfterUpdate()
Select Case Me.Ctl1
Case "ÇáÕäÝ"
Me.a.Visible = True
Me.b.Visible = True
Me.c.Visible = False
Case "ÇáãæÑÏ"
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = True
Case Else
Me.a.Visible = False
Me.b.Visible = False
Me.c.Visible = False
End Select
End Subجعفر
اشكرك حبيبي
على المساعده الجميله و المتميزه
حياك الله :)
جعفر
المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية
جارٍ التحقق من المتواجدين…