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

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

قام بنشر

السلام عليكم الإخوة الأفاضل في هذا المنتدى الجميل

في هذا الموضوع اريد حساب عدد العمال حسب مجال العمر

مثال: حساب عدد العمال العمر: من 30 سنة إلى 40 سنة وحسب الجنس (ذكور وإناث) وهكذا  وفق التقرير

ويكون تجميع حسب الوظيفة

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

 

base_S.accdb

قام بنشر

 

 

منذ ساعه, moho58 said:

في هذا الموضوع اريد حساب عدد العمال حسب مجال العمر

مثال: حساب عدد العمال العمر: من 30 سنة إلى 40 سنة وحسب الجنس (ذكور وإناث) وهكذا  وفق التقرير

ويكون تجميع حسب الوظيفة

انظر هذا الموضوع يفيدك .... استخدم خاصية البحث في المنتدى 

في 28‏/4‏/2019 at 22:28, jjafferr said:

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

 

اخي كاسر 🙂

الكود اللي استعملته ، بإستخدام الامر Dcount ، واللي هو عبارة عن استعلام خاص للجمع 🙂

فانت تعمل 20 استعلام لتحصل على المطلوب 🙂

 

فقمت انا بعمل هذا الاستعلام ، واللي اخذت المعايير من كودك ، وبدون تغيير فيها 

1051.Clipboard01.jpg.3d2ac0b659869f1d9ccb67e186bb222c.jpg

 

SELECT Abs(Sum([العمر] Between 0 And 14 And [الجنس]='ذكر')) AS T21, Abs(Sum([العمر] Between 15 And 20 And [الجنس]='ذكر')) AS T22, Abs(Sum([العمر] Between 21 And 30 And [الجنس]='ذكر')) AS T23, Abs(Sum([العمر] Between 31 And 40 And [الجنس]='ذكر')) AS T24, Abs(Sum([العمر]>=41 And [الجنس]='ذكر')) AS T25, Abs(Sum([العمر] Between 0 And 14 And [الجنس]='أنثى')) AS T27, Abs(Sum([العمر] Between 15 And 20 And [الجنس]='أنثى')) AS T28, Abs(Sum([العمر] Between 21 And 30 And [الجنس]='أنثى')) AS T29, Abs(Sum([العمر] Between 31 And 40 And [الجنس]='أنثى')) AS T30, Abs(Sum([العمر]>=41 And [الجنس]='أنثى')) AS T31, Abs(Sum([طبيعة الإعاقة]='حركي' And [الجنس]='ذكر')) AS T51, Abs(Sum([طبيعة الإعاقة]='ذهني' And [الجنس]='ذكر')) AS T52, Abs(Sum([طبيعة الإعاقة]='سمعي' And [الجنس]='ذكر')) AS T53, Abs(Sum([طبيعة الإعاقة]='بصري' And [الجنس]='ذكر')) AS T54, Abs(Sum([طبيعة الإعاقة]='متعدد الإعاقة' And [الجنس]='ذكر')) AS T55, Abs(Sum([طبيعة الإعاقة]='حركي' And [الجنس]='أنثى')) AS T58, Abs(Sum([طبيعة الإعاقة]='ذهني' And [الجنس]='أنثى')) AS T59, Abs(Sum([طبيعة الإعاقة]='سمعي' And [الجنس]='أنثى')) AS T60, Abs(Sum([طبيعة الإعاقة]='بصري' And [الجنس]='أنثى')) AS T61, Abs(Sum([طبيعة الإعاقة]='متعدد الإعاقة' And [الجنس]='أنثى')) AS T62
FROM العمر;

 

ومن استعلام واحد حصلت على جميع نتائجك 🙂

1051.Clipboard02.jpg.321d6489e64c3ce2b31a6b64d2505d09.jpg

.

وعملت نسخة من تقريرك ، وحذفت الكود ، وحفظته باسم rpt_NEW ، وكله تمام 🙂

بس الفرق هو ، سرعة اظهار التقرير 🙂

 

جعفر

1051.Handicapées -kaser906l.accdb.zip 245 kB · 76 downloads

 

  • Like 2
  • أفضل إجابة
قام بنشر (معدل)

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

بدايةً قمت بتغيير بعض اسماء العناصر من العربية الى الانجليزية ، ولكنها ليست ذات صلة بالحل .

اجعل هذا الاستعلام مصدر سجلات التقرير

SELECT tbl_info_fonctionnaire.grade_poste_actuel, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=0 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<30,1,0)) AS عدد_الذكور_أقل_من_30, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=0 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<30,1,0)) AS عدد_الإناث_أقل_من_30, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=30 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=40,1,0)) AS عدد_الذكور_بين_30_و_40, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=30 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=40,1,0)) AS عدد_الإناث_بين_30_و_40, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=41 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=50,1,0)) AS عدد_الذكور_بين_41_و_50, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=41 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=50,1,0)) AS عدد_الإناث_بين_41_و_50, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=51 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=55,1,0)) AS عدد_الذكور_بين_51_و_55, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=51 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=55,1,0)) AS عدد_الإناث_بين_51_و_55, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=56 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=59,1,0)) AS عدد_الذكور_بين_56_و_59, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=56 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=59,1,0)) AS عدد_الإناث_بين_56_و_59, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=60,1,0)) AS عدد_الذكور_أكبر_من_60, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=60,1,0)) AS عدد_الإناث_أكبر_من_60, Count(IIf(tbl_info_fonctionnaire.sex="أنثى",1,Null)) AS عدد_الإناث_حسب_الدرجة, Count(*) AS المجموع_الكلي
FROM tbl_info_fonctionnaire
GROUP BY tbl_info_fonctionnaire.grade_poste_actuel;

الملف بعد التعديل
base_S - Copy.accdb

 

 

منذ ساعه, ابو البشر said:

 

 

انظر هذا الموضوع يفيدك .... استخدم خاصية البحث في المنتدى 

 

اعتذر ، لم أر تعليق الأستاذ @ابو البشر ، ولكن له الأصل في حق الإجابة :wub:

كنت في الصفحة ولم اقم بعمل تحديث لها قبل الرد أثناء كتابة الاستعلام والتجارب عليه 

تم تعديل بواسطه Foksh
تعليق جديد
  • Like 3
قام بنشر

السلام عليكم جزاكما الله كل خير

الأستاذ @ابو البشر

والأستاذ @Foksh

 

والله لقد قمت بعملية البحث وحصلت على موضوع تقريبا مشابه جدا جدا لكنني لم استطيع الفكرة - كانت هناك وحدة نمطية فيه

 

جاري تجريب ملف الأستاذ @Foksh

قام بنشر
9 ساعات مضت, Foksh said:

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

بدايةً قمت بتغيير بعض اسماء العناصر من العربية الى الانجليزية ، ولكنها ليست ذات صلة بالحل .

اجعل هذا الاستعلام مصدر سجلات التقرير

SELECT tbl_info_fonctionnaire.grade_poste_actuel, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=0 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<30,1,0)) AS عدد_الذكور_أقل_من_30, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=0 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<30,1,0)) AS عدد_الإناث_أقل_من_30, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=30 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=40,1,0)) AS عدد_الذكور_بين_30_و_40, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=30 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=40,1,0)) AS عدد_الإناث_بين_30_و_40, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=41 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=50,1,0)) AS عدد_الذكور_بين_41_و_50, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=41 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=50,1,0)) AS عدد_الإناث_بين_41_و_50, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=51 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=55,1,0)) AS عدد_الذكور_بين_51_و_55, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=51 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=55,1,0)) AS عدد_الإناث_بين_51_و_55, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=56 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=59,1,0)) AS عدد_الذكور_بين_56_و_59, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=56 And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())<=59,1,0)) AS عدد_الإناث_بين_56_و_59, Sum(IIf(tbl_info_fonctionnaire.sex="ذكر" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=60,1,0)) AS عدد_الذكور_أكبر_من_60, Sum(IIf(tbl_info_fonctionnaire.sex="أنثى" And DateDiff("yyyy",tbl_info_fonctionnaire.date_naissance,Date())>=60,1,0)) AS عدد_الإناث_أكبر_من_60, Count(IIf(tbl_info_fonctionnaire.sex="أنثى",1,Null)) AS عدد_الإناث_حسب_الدرجة, Count(*) AS المجموع_الكلي
FROM tbl_info_fonctionnaire
GROUP BY tbl_info_fonctionnaire.grade_poste_actuel;

الملف بعد التعديل
base_S - Copy.accdb

 

 

اعتذر ، لم أر تعليق الأستاذ @ابو البشر ، ولكن له الأصل في حق الإجابة :wub:

كنت في الصفحة ولم اقم بعمل تحديث لها قبل الرد أثناء كتابة الاستعلام والتجارب عليه 

بعد التجربة  اخي  شغال وبامتياز 

استعلام رائع رائع و واضح ومفهوم ولمسة رائعة جدا جدا

متابعة ممتازة اخي واجابة سريعة

والله يا أخي أفرحتني 

جزاك الله كل خير  وجعله في ميزان حسناتك  وصدقة جارية ان شاء الله 

 

  • Thanks 1
قام بنشر
12 ساعات مضت, Foksh said:

اعتذر ، لم أر تعليق الأستاذ @ابو البشر ، ولكن له الأصل في حق الإجابة :wub:

كنت في الصفحة ولم اقم بعمل تحديث لها قبل الرد أثناء كتابة الاستعلام والتجارب عليه

لاداعي للاعتذار اخي فادي .... نحن هنا كلنا نكمل بعض والهدف الاستفادة من الاجابات وانا اول المستفيدين من اجاباتكم بارك الله فيكم 

  • Like 1

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