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

مطلوب وحدة نمطية لهذا الكود


haniameen

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

 الأخوة في هذا المنتدى 

كل عام وانتم بخير

قمت بتصميم استعلام يستخلص من الرقم القومي تاريخ الميلاد والسن في أول أكتوبر والنوع ويتبقى معي محافظة الميلاد

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

حيث أن National_no هو حقل الرقم القومي

If(Mid([National_no];8;2)=1;"القاهرة";
If(Mid([National_no];8;2)=2;"الإسكندرية";
If(Mid([National_no];8;2)=3;"بورسعيد";
If(Mid([National_no];8;2)=4;"السويس";
If(Mid([National_no];8;2)=11;"دمياط";
If(Mid([National_no];8;2)=12;"الدقهلية";
If(Mid([National_no];8;2)=13;"الشرقية";
If(Mid([National_no];8;2)=14;"القليوبية";
If(Mid([National_no];8;2)=15;"كفر الشيخ";
If(Mid([National_no];8;2)=16;"الغربية";
If(Mid([National_no];8;2)=17;"المنوفية";
If(Mid([National_no];8;2)=18;"البحيرة";
If(Mid([National_no];8;2)=19;"الإسماعيلية";
If(Mid([National_no];8;2)=21;"الجيزة";
If(Mid([National_no];8;2)=22;"بني سويف";
If(Mid([National_no];8;2)=23;"الفيوم";
If(Mid([National_no];8;2)=24;"المنيا";
If(Mid([National_no];8;2)=25;"أسيوط";
If(Mid([National_no];8;2)=;"سوهاج";
If(Mid([National_no];8;2)=27;"قنا";
If(Mid([National_no];8;2)=28;"أسوان";
If(Mid([National_no];8;2)=29;"الأقصر";
If(Mid([National_no];8;2)=31;"البحر الأحمر";
If(Mid([National_no];8;2)=32;"الوادي الجديد";
If(Mid([National_no];8;2)=33;"مطروح";
If(Mid([National_no];8;2)=34;"شمال سيناء";
If(Mid([National_no];8;2)=35;"خارج الجمهورية";"جنوب سيناء")))))))))))))))))))))))))))

 

محافظة الميلاد.rar

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

3 ساعات مضت, haniameen said:

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

اتفضل

Public Function RqmQawmi(National_no As String)
    If (Mid([National_no], 8, 2) = 1) Then
                RqmQawmi = "القاهرة"
        ElseIf (Mid([National_no], 8, 2) = 2) Then
                RqmQawmi = "الإسكندرية"
        ElseIf (Mid([National_no], 8, 2) = 3) Then
                RqmQawmi = "بورسعيد"
        ElseIf (Mid([National_no], 8, 2) = 4) Then
                RqmQawmi = "السويس"
        ElseIf (Mid([National_no], 8, 2) = 11) Then
                RqmQawmi = "دمياط"
        ElseIf (Mid([National_no], 8, 2) = 12) Then
                RqmQawmi = "الدقهلية"
        ElseIf (Mid([National_no], 8, 2) = 13) Then
                RqmQawmi = "الشرقية"
        ElseIf (Mid([National_no], 8, 2) = 14) Then
                RqmQawmi = "القليوبية"
        ElseIf (Mid([National_no], 8, 2) = 15) Then
                RqmQawmi = "كفر الشيخ"
        ElseIf (Mid([National_no], 8, 2) = 16) Then
                RqmQawmi = "الغربية"
        ElseIf (Mid([National_no], 8, 2) = 17) Then
                RqmQawmi = "المنوفية"
        ElseIf (Mid([National_no], 8, 2) = 18) Then
                RqmQawmi = "البحيرة"
        ElseIf (Mid([National_no], 8, 2) = 19) Then
                RqmQawmi = "الإسماعيلية"
        ElseIf (Mid([National_no], 8, 2) = 21) Then
                RqmQawmi = "الجيزة"
        ElseIf (Mid([National_no], 8, 2) = 22) Then
                RqmQawmi = "بني سويف"
        ElseIf (Mid([National_no], 8, 2) = 23) Then
                RqmQawmi = "الفيوم"
        ElseIf (Mid([National_no], 8, 2) = 24) Then
                RqmQawmi = "المنيا"
        ElseIf (Mid([National_no], 8, 2) = 25) Then
                RqmQawmi = "أسيوط"
        ElseIf (Mid([National_no], 8, 2) = 26) Then
                RqmQawmi = "سوهاج"
        ElseIf (Mid([National_no], 8, 2) = 27) Then
                RqmQawmi = "قنا"
        ElseIf (Mid([National_no], 8, 2) = 28) Then
                RqmQawmi = "أسوان"
        ElseIf (Mid([National_no], 8, 2) = 29) Then
                RqmQawmi = "الأقصر"
        ElseIf (Mid([National_no], 8, 2) = 31) Then
                RqmQawmi = "البحر الأحمر"
        ElseIf (Mid([National_no], 8, 2) = 32) Then
                RqmQawmi = "الوادي الجديد"
        ElseIf (Mid([National_no], 8, 2) = 33) Then
                RqmQawmi = "مطروح"
        ElseIf (Mid([National_no], 8, 2) = 34) Then
                RqmQawmi = "شمال سيناء"
        ElseIf (Mid([National_no], 8, 2) = 35) Then
                RqmQawmi = "خارج الجمهورية"
        ElseIf (Mid([National_no], 8, 2) = 31) Then
                RqmQawmi = "الأحمر"
        Else
                RqmQawmi = "جنوب سيناء"
    End If
End Function

 

محافظة الميلاد.rar

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

5 ساعات مضت, Shivan Rekany said:

اتفضل


Public Function RqmQawmi(National_no As String)
    If (Mid([National_no], 8, 2) = 1) Then
                RqmQawmi = "القاهرة"
        ElseIf (Mid([National_no], 8, 2) = 2) Then
                RqmQawmi = "الإسكندرية"
        ElseIf (Mid([National_no], 8, 2) = 3) Then
                RqmQawmi = "بورسعيد"
        ElseIf (Mid([National_no], 8, 2) = 4) Then
                RqmQawmi = "السويس"
        ElseIf (Mid([National_no], 8, 2) = 11) Then
                RqmQawmi = "دمياط"
        ElseIf (Mid([National_no], 8, 2) = 12) Then
                RqmQawmi = "الدقهلية"
        ElseIf (Mid([National_no], 8, 2) = 13) Then
                RqmQawmi = "الشرقية"
        ElseIf (Mid([National_no], 8, 2) = 14) Then
                RqmQawmi = "القليوبية"
        ElseIf (Mid([National_no], 8, 2) = 15) Then
                RqmQawmi = "كفر الشيخ"
        ElseIf (Mid([National_no], 8, 2) = 16) Then
                RqmQawmi = "الغربية"
        ElseIf (Mid([National_no], 8, 2) = 17) Then
                RqmQawmi = "المنوفية"
        ElseIf (Mid([National_no], 8, 2) = 18) Then
                RqmQawmi = "البحيرة"
        ElseIf (Mid([National_no], 8, 2) = 19) Then
                RqmQawmi = "الإسماعيلية"
        ElseIf (Mid([National_no], 8, 2) = 21) Then
                RqmQawmi = "الجيزة"
        ElseIf (Mid([National_no], 8, 2) = 22) Then
                RqmQawmi = "بني سويف"
        ElseIf (Mid([National_no], 8, 2) = 23) Then
                RqmQawmi = "الفيوم"
        ElseIf (Mid([National_no], 8, 2) = 24) Then
                RqmQawmi = "المنيا"
        ElseIf (Mid([National_no], 8, 2) = 25) Then
                RqmQawmi = "أسيوط"
        ElseIf (Mid([National_no], 8, 2) = 26) Then
                RqmQawmi = "سوهاج"
        ElseIf (Mid([National_no], 8, 2) = 27) Then
                RqmQawmi = "قنا"
        ElseIf (Mid([National_no], 8, 2) = 28) Then
                RqmQawmi = "أسوان"
        ElseIf (Mid([National_no], 8, 2) = 29) Then
                RqmQawmi = "الأقصر"
        ElseIf (Mid([National_no], 8, 2) = 31) Then
                RqmQawmi = "البحر الأحمر"
        ElseIf (Mid([National_no], 8, 2) = 32) Then
                RqmQawmi = "الوادي الجديد"
        ElseIf (Mid([National_no], 8, 2) = 33) Then
                RqmQawmi = "مطروح"
        ElseIf (Mid([National_no], 8, 2) = 34) Then
                RqmQawmi = "شمال سيناء"
        ElseIf (Mid([National_no], 8, 2) = 35) Then
                RqmQawmi = "خارج الجمهورية"
        ElseIf (Mid([National_no], 8, 2) = 31) Then
                RqmQawmi = "الأحمر"
        Else
                RqmQawmi = "جنوب سيناء"
    End If
End Function

 

محافظة الميلاد.rar

اخي شيفان اشكرك على مرورك هذا 

هذا هو المطلوب وبارك الله فيك ودمتم ذخرا لهذا المنتدى

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

إذا كان عدد المحافظات كبيرا

فالأفضل إنشاء جدول للمحافظات

كود المحافظة

اسم المحافظة

ثم تستخدم هذا الكود لاستخراج رقم المحافظة من الرقم القومى ووضعه فى حقل رقم المحافظة

وكذا - بالمرة - استخراج يوم و شهر و سنة الميلاد و تحويلها إلى تاريخ ميلاد كامل ووضعه فى حقل تاريخ الميلاد

و هذا لكل السجلات

وبسرعة مذهلة

Dim db As DAO.Database
Dim rs As DAO.Recordset
Set db = CurrentDb
Set rs = db.OpenRecordset("tblmain")
rs.MoveFirst
Do Until rs.EOF
        rs.Edit
                rs!Mohafza = Nz(mID(rs![CHqawmy], 8, 2))
                rs!CHBDay = Nz(mID(rs![CHqawmy], 6, 2))
                rs![CHBmonth] = Nz(mID(rs![CHqawmy], 4, 2))

            If Nz(mID(rs![CHqawmy], 1, 1)) = 2 Then
                rs![CHYear] = Val(mID(rs![CHqawmy], 2, 2)) + 1900
            Else
                rs![CHYear] = Nz(mID(rs![CHqawmy], 2, 2)) + 2000
            End If
                    rs!Tmelad = DateSerial(rs!CHYear, rs!CHBmonth, rs!CHBDay)
        rs.Update
        rs.MoveNext
Loop
Me.Requery
 DoCmd.GoToRecord , , acFirst
 Set db = Nothing
 Set rs = Nothing

فالنتيجة هى وضع رقم المحافظة فى مربع تحرير و سرد يظهر الحقل الثانى و هو اسم المحافظة و ليس رقمها

Capture400.PNG.87660b680df56eea2e9096d25eed0078.PNG

تم تعديل بواسطه عبد الفتاح كيرة
  • Like 2
رابط هذا التعليق
شارك

من فضلك سجل دخول لتتمكن من التعليق

ستتمكن من اضافه تعليقات بعد التسجيل



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

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

Important Information