اذهب الي المحتوي
أوفيسنا
بحث مخصص من جوجل فى أوفيسنا
Custom Search

الرجاء التعديل على كود vba في وحدة نمطية


haniameen

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

اخواني لديا استعلام به ست حقول 

مادة العربي  حقولها 

(  [es_ar_1]  ) استحقاق تظلم عربي بقيمة نعم اولا 

(  [zey_ar_1] )  الزيادة في درجة العربي بقيمة رقم

مادة اللغة الانجليزية 

 

(  [es_en_1]  ) استحقاق تظلم اللغة الأجنبية بقيمة نعم اولا 

(  [zey_en_1] )  الزيادة في درجة تظلم اللغة الأجنبية بقيمة رقم

مادة الدراسات الأجتماعية

(  [es_dr_1]  ) استحقاق تظلم الدراسات بقيمة نعم اولا 

(  [zey_dr_1] )  الزيادة في درجة الدراسات بقيمة رقم

المطلوب التعديل على الوحدة النمطية بحيث تكون دالة if  كالأتي في حقل " byan " في الاستعلام

1 - اذا كان حقل (  [zey_ar_1] ) في العربي أكبر من صفر يبقى " زيادة في اللغة العربية "&[zey_ar_1]&" درجة " 

ويتم تكملة الجملة في نفس الحقل 

و اذا كان حقل (  [zey_en_1] ) في اللغة الأجنبية أكبر من صفر يبقى " زيادة في اللغة الأجنبية "&[zey_en_1]&" درجة " 

و اذا كان حقل (  [zey_dr_1] ) في الدراسات  أكبر من صفر يبقى " زيادة في الدراسات "&[zey_adr_1]&" درجة " 

و اذا كان حقل (  [es_ar_1] ) في العربي = لا  يبقى " لم يزد في اللغة العربية " 

و اذا كان حقل (  [es_en_1] ) في اللغة الأجنبية = لا   يبقى " لم يزد في اللغة الأجنبية " 

و اذا كان حقل (  [es_dr_1] ) في الدراسات   = لا   يبقى " لم يزد في الدراسات  " 

حاولت تصميم الوحدة النمطية ولكن يظهر شرط واحد ولا يظهر باقي الشروط كما ستشاهدون

مثال مطلوب كما بالصورة 

Untitled.png.b7f71b556e44d1a7d0ec0894f7b605c3.png

tzalom.mdb

Untitled.png

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

السلام عليكم

اخى الحبيب هل تقصد مثل الصوره التاليه

اذا كان هذا ما تقصده اكمل باقى شروطك فى الوحده النمطيه

على قد فهمى للسؤال واعتذر لك احاول المساعده على قدر فهمى فما زلت اتعلم

تقبل تحياتى وتمنياتى لك وللجميع بالتوفيق

طبتم واهتديتم

 

qz.png

tzalom.mdb

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

للأسف أخي احمد الفلاحي ليس هذا المطلوب

الكود لم يطبق على باقي الطلاب لأنه اشترط الثلاث مواد مع بعض العربي واللغة الاجنبية والدراسات

ولكم المطلوب إذا ذادت اللغة العربية أو أي مادة أخرى بكتب الزيادة لها دون التقيد بباقي المواد

لان هنام طلاب زيدت في العربي ولم تزد في الدراسات مثلا وهناك من زاد في الدراسات ولم يزد في العربي وهكذا

ارجو ان تكون قد وصلت الفكرة

 

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

وعليكم السلام 🙂

 

تفضل :

image.png.79c093c15e10af4afa75c76c4256af95.png

.

وهذه الوحدة النمطية بعد التعديل :

Option Compare Database
'حساب مستوى الدرجة
Function zyd_1(a, b, c, d, e, f) As String
'a = المجموعة النوعية

    Dim A_1, E_1, D_1 As String
    
    'اللغة العربية
    If a > 0 Then
        A_1 = "زيادة في اللغة العربية " & a & " درجة"
   
    ElseIf d = "لا" Then
        A_1 = " لم يزد في اللغة العربية "
    
    End If
    
    
    'اللغة الأجنبية
    If b > 0 Then
        E_1 = "زيادة في اللغة الأجنبية " & b & " درجة"
    
    ElseIf e = "لا" Then
        E_1 = " لم يزد في اللغة الأجنبية "
        
    End If
    
    
    'الدراسات
    If c > 0 Then
        D_1 = "زيادة في الدراسات " & c & " درجة"

    ElseIf f = "لا" Then
        D_1 = " لم يزد في الدراسات "

    End If
    
    
    'الدمج
    zyd_1 = ""
    If Len(A_1) > 0 Then
        zyd_1 = A_1
    End If
    If Len(E_1) > 0 Then
        zyd_1 = zyd_1 & " و " & E_1
    End If
    If Len(D_1) > 0 Then
        zyd_1 = zyd_1 & " و " & D_1
    End If
        
    'اذا في واو في بداية الجملة فلا تقرأها
    If Left(zyd_1, 3) = " و " Then
        zyd_1 = Mid(zyd_1, 4)
    End If
    
End Function

 

جعفر

1162.tzalom.mdb.zip

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

1 ساعه مضت, jjafferr said:

وعليكم السلام 🙂

 

تفضل :

image.png.79c093c15e10af4afa75c76c4256af95.png

.

وهذه الوحدة النمطية بعد التعديل :


Option Compare Database
'حساب مستوى الدرجة
Function zyd_1(a, b, c, d, e, f) As String
'a = المجموعة النوعية

    Dim A_1, E_1, D_1 As String
    
    'اللغة العربية
    If a > 0 Then
        A_1 = "زيادة في اللغة العربية " & a & " درجة"
   
    ElseIf d = "لا" Then
        A_1 = " لم يزد في اللغة العربية "
    
    End If
    
    
    'اللغة الأجنبية
    If b > 0 Then
        E_1 = "زيادة في اللغة الأجنبية " & b & " درجة"
    
    ElseIf e = "لا" Then
        E_1 = " لم يزد في اللغة الأجنبية "
        
    End If
    
    
    'الدراسات
    If c > 0 Then
        D_1 = "زيادة في الدراسات " & c & " درجة"

    ElseIf f = "لا" Then
        D_1 = " لم يزد في الدراسات "

    End If
    
    
    'الدمج
    zyd_1 = ""
    If Len(A_1) > 0 Then
        zyd_1 = A_1
    End If
    If Len(E_1) > 0 Then
        zyd_1 = zyd_1 & " و " & E_1
    End If
    If Len(D_1) > 0 Then
        zyd_1 = zyd_1 & " و " & D_1
    End If
        
    'اذا في واو في بداية الجملة فلا تقرأها
    If Left(zyd_1, 3) = " و " Then
        zyd_1 = Mid(zyd_1, 4)
    End If
    
End Function

 

جعفر

1162.tzalom.mdb.zip 37.88 kB · 0 تنزيلات

 

جزاك الله خيرا أخي جعفر الكود يعمل بامتياز

جهد مشكور أخي

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

مثال : زيادة في اللغة الأجنبية وزيادة في الدرسات ولم يزد في اللغة العربية 

يقرأ المواد التي زادت أولا

ثم يقرأ المواد التي لم تزد بعد ذلك

وشكرا أخي جعفر على سعة صدرك

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

تفضل ، بتغيير في الوحدة النمطية ، بحيث الزائد صار له متغير مختلف عن الـ لا 🙂

image.png.32c65e5730dfadb76a48684077a1acc5.png

.

 

Option Compare Database
'حساب مستوى الدرجة
Function zyd_1(a, b, c, d, e, f) As String
'a = المجموعة النوعية

    Dim A_1, E_1, D_1, A_2, E_2, D_2 As String
    
    'اللغة العربية
    If a > 0 Then
        A_1 = "زيادة في اللغة العربية " & a & " درجة"
   
    ElseIf d = "لا" Then
        A_2 = " لم يزد في اللغة العربية "
    
    End If
    
    
    'اللغة الأجنبية
    If b > 0 Then
        E_1 = "زيادة في اللغة الأجنبية " & b & " درجة"
    
    ElseIf e = "لا" Then
        E_2 = " لم يزد في اللغة الأجنبية "
        
    End If
    
    
    'الدراسات
    If c > 0 Then
        D_1 = "زيادة في الدراسات " & c & " درجة"

    ElseIf f = "لا" Then
        D_2 = " لم يزد في الدراسات "

    End If
    
    
    'الدمج
    'الزيادة
    zyd_1 = ""
    If Len(A_1) > 0 Then
        zyd_1 = A_1
    End If
    If Len(E_1) > 0 Then
        zyd_1 = zyd_1 & " و " & E_1
    End If
    If Len(D_1) > 0 Then
        zyd_1 = zyd_1 & " و " & D_1
    End If
        
    'لم تزد
    If Len(A_2) > 0 Then
        zyd_1 = zyd_1 & " و " & A_2
    End If
    If Len(E_2) > 0 Then
        zyd_1 = zyd_1 & " و " & E_2
    End If
    If Len(D_2) > 0 Then
        zyd_1 = zyd_1 & " و " & D_2
    End If
        
        
        
        
        
    'اذا في واو في بداية الجملة فلا تقرأها
    If Left(zyd_1, 3) = " و " Then
        zyd_1 = Mid(zyd_1, 4)
    End If
    
End Function

 

جعفر

1162.1.tzalom.mdb.zip

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

واقتراح :

الوحدة النمطية بحاجة الى الحقول اللي فيها ارقام فقط مثل zey_en_1 ، وليست بحاجة الى الحقول اللي فيها نعم لا مثل es_en_1 ،

فإذا الحقول zey فيها قيمة ، فهي زيادة ، واذا مافيها قيمة ، فهي لا 🙂

 

جعفر

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

1 ساعه مضت, jjafferr said:

واقتراح :

الوحدة النمطية بحاجة الى الحقول اللي فيها ارقام فقط مثل zey_en_1 ، وليست بحاجة الى الحقول اللي فيها نعم لا مثل es_en_1 ،

فإذا الحقول zey فيها قيمة ، فهي زيادة ، واذا مافيها قيمة ، فهي لا 🙂

 

جعفر

اولا استاذي جعفر اشكرك على هذا المجهود الرائع

ثانيا بالنسبة اقتصار الوحدة النمطية فقط على الرقم في حقل زيادة

غير ممكن

لأن القيمة الفارغة في خقل زيادة قد تكون

إما  طالب لم بتظلم أصلا في المادة  ، او طالب تظلم ولم  يستحق الزبادة

وللتفريق بين الطالب المتظلم  ولم يستحق والطالب الغير متظلم في المادة لجات للحقل نعم ولا

فكلمة (نعم او لا) في الحقل بغض النظر عن معناهم الحرفي تعني هذا الطالب تظلم في هذه المادة

ووجود الحقل فارغ الخاص(  بنعم و لا ) تعني ان هذا الطالب لم يتقدم للتظلم في هذه المادة فلا تحسب له زيادة او عدم زيادة

ارجو ان اكون قد اوصلت الفكرة وشكرا على سعة صدرك مرة اخرى

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

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.

  • تصفح هذا الموضوع مؤخراً   0 اعضاء متواجدين الان

    • لايوجد اعضاء مسجلون يتصفحون هذه الصفحه
×
×
  • اضف...

Important Information