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

أبو عبدالله الحلوانى

الخبراء
  • Posts

    1,715
  • تاريخ الانضمام

  • Days Won

    5

مشاركات المكتوبه بواسطه أبو عبدالله الحلوانى

  1. حقيقة لم افهم المقصود بشكل جيد هلا تكرمت بمزيد من التوضيح

    مثل ماذا تعني بالتقسيم الي مجموعات واين تريد ان يظهر هذا التقسيم في جدول ام تقرير 

    وماذا تعني بتغير المجموعات وعلي اي اساس يتم التغير 

    اعتذر لعدم افادتك بالوقت الحالي، ولكن كما تعلم فان فهم السؤال شطر الجواب كما يقال 

     

    • Like 2
  2. السلام عليكم ورحمة الله وبركاته

    سؤالي كما بالعنوان عن دمج ملف الورد بشيت اكسل - لدي شيت اكسل به مجموعة سجلات خلال فترة زمنية محددة لمجموعة من الاشخاص مثلا شهر يناير مشتريات محمود 100 ومحمد 150 واحمد 200 ، وهكذا وشهر فبراير مشتريات محمود 150 ومحمد 100 واحمد 150 وهكذا 

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

    وجزاكم الله خيرا

     

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

    اعتذر عن ارفاق مرفق لكوني اكتب الموضوع علي عجالة - فانا مرهق جدا وسأذهب الي النوم وغدا ان شاء الله اجهز مرفق للتوضيح 

    اما عن الموضوع: فوصف المشكلة بشكل مختصر وارجو ان يخرج الكلام متزن فيفهم علي اساتذتي الكرام

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

    Sub getItemsByBlj(ByVal bljNo As String, ByVal InvNo As String)
    Dim QryStr As String
    'On Error Resume Next
    QryStr = "INSERT INTO InvoiceDetailTbl ( IDs, OldInvs, jyarID, Movtyp, StorID, DmanSt, VoicDtID, Quentity, price ) " & _
    "SELECT MovmentTbl.ID, MovmentTbl.OldInvs, MovmentTbl.jyarID, 2 AS MovTyp, MovmentTbl.StorID, MovmentTbl.AoryntID, " & _
    InvNo & " AS InvExp, MovmentTbl.QntyOut, MovmentTbl.AmtJyarOut FROM MovmentTbl " & _
    "WHERE (((MovmentTbl.BlajID)='" & bljNo & "'));"
    '
    DoCmd.SetWarnings False
    DoCmd.RunSQL QryStr
    '
    End Sub

    المشكلة عند تنفيذ الكود يطلب مني ادخال معيار - الذي تم تمريره الي الدالة - invNo -

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

    1234.png.ac2db9967c1ad73ed76a1ec8c14dc21d.png

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

    شاكرا لكم دعمكم وعطائكم الذي لا ينقطع - كل عام وحضراتكم جميعا بخير 

    وجزاكم الله خيرا  

  4. جزاكم الله خيرا

    نعم اجمع من الاستعلام وليس من الجدول

    الجدول به حقول كثيرة فقمت بعمل استعلام تحديد للحقول الملطلوبة فقط بشرط تاريخ محدد 

    وجعلته مصدر للاستعلام الاخر - موضع السؤال - هل المشكلة تكمن في كون الاستعلام هو مصدر بيانات الاستعلام الآخر؟!

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

    عندي بيانات بجدول ولنفترض حقلين المبلغ وحالة السداد( اما 0 أو 1)

    وضعت في الاستعلام في عنوان الحقل كود مثل هذا 

    شرط المسدد
    MbljMsdd:Dsum("TotalMosthk";"HafeTotalKlsaQry";"PaydDon=-1 AND MhdrTyp=" & [MhdrTyp])
    شرط غير المسدد
    MbljJrMsdd:Dsum("TotalMosthk";"HafeTotalKlsaQry";"PaydDon=0 AND MhdrTyp=" & [MhdrTyp])

    ولكن التقرير يظهر به القيم خطأ Error

    وجزاكم الله خيرا

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

    حقيقة مررت بهذا الموضوع منذ أكثر من ساعة 

    وعملت علي هذا المرفق - ولم أري رد استاذنا ومعلمنا @ابوخليل جزاه الله خيرا 

    ولا شك ليس بعد رده ردود أخري 

    ولكن هذا بعض جهد المقل ولعله يضيف الي الموضوع ولو يسيرا 

     

    ID.rar

    • Like 1
  7. منذ ساعه, ابوخليل said:

    لاني حسبتها باصابعي والنتيجة 19 شهر

    وانا ايضا حسبتها باصابعي الاحد عشر :biggrin:

    عموما - مش هفاصل مع حضرتك ادفع ما اردت وانا مسامح في الباقي - :biggrin:

    منذ ساعه, ابوخليل said:

    وأستاذنا القدير

    بل انتم اساتذتي وتاج رأسي - واحلف غير حانث ان شاء الله - لو قدر لي بلوغكم لأقبلن رأسك ويديك 

    جزاكم الله عنا خير الجزاء وجعله في موازين حسناتكم - وأسأل الله الكريم المنان أن يمن عليكم بسعادة الدارين وقرة العين في الأهل والذرية - والبركة في العمر والعمل آمين وجميع اساتذتي الأكارم الأفاضل وجميع المسلمين 

    والله منذ يومين وقد أُغلق عليّ فهمها،  ولم ازل حتي ساعتي هذه وانا احاول. 

    جزاكم الله خيرا - وأسأل الله أن يفرج عنكم بها كربة من كرب يوم القيامة 

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

     

  8. شكرا لك @AbuuAhmed 

    12 ساعات مضت, AbuuAhmed said:

    ويبدو لي أن بيانات الجدول فيها تكرار

    نعم لو نظرت لكل عمود مستقل ولكن بمجموع حقول الصف الواحد لا يوجد تكرار 

    12 ساعات مضت, AbuuAhmed said:

    كما أن الدالة تستقبل متغيرين غير مستعملين Q و actv ولا دور لهما في الدالة.

    نعم - لأنني اختزلت اجزئية التي تعنيني في السؤال ولا حاجة لان ارفق باقي الكود الذي لا مشكلة به ويمكنك ان تحذف هذين البرمترين من الدالة ان اردت.

    12 ساعات مضت, AbuuAhmed said:

    وقد قمت بفلترة الجدول بعدة أشكال ولكن مع كل النتائج أرى أن هناك سجلات متشابهة!!

    أعتذر لتعب حضرتك - ولكن للتوضيح هذه عينة من البيانات الفعلية التي سيتم عليها العمل: 

    وتلخيص الامر في ان عمود TarifaID هو عدد الفترات المعنية فلكل فترة كود معيا من 0 الي 3 حسب العينة المرفقة بالمرفق السابق

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

    12 ساعات مضت, AbuuAhmed said:

    وتوضيح أين تود إضافة نتائجها.

    قمت بانشاء Array لتخزين نتائج الدالة وهذا ما احتاجه فقط الآن 

     

    12 ساعات مضت, AbuuAhmed said:

    إما أن توضح أكثر وبتفاصيل واضحة جدا

    انا جاهز لاي استفسار من حضرتك للتوضيح متي اردت - ارجو دراسة المثالين بالرد السابق 

    المشكلة فقط في تحديد الفترة الزمنية للمدي المحدد فقط اين يقع بالتحديد خلال فترات التغير الزمنية للبيانات داخل الجدول

    شاكر لسيادتكم المحاولة في المساعدة - وارجو ان يكون ردي به توضيح لبعض الغموض في السؤال

    وأرجو ان لا اكون ممن عنيت ببيت الشعر بالتوقيع :biggrin:

    وجزاكم الله خيرا

     

  9. 12 ساعات مضت, jjafferr said:

    لم ادخل في الموضوع

    بل من فضلك تدخل - فهذه العيطة بحاجة لتدخل رجال لفض النزاع القائم - :biggrin:

    جزاكم الله خيرا - طبعا ولا شك افدت من دالة حضرتك في تنسيق التاريخ ولا زلت استخدمها حتي الآن 

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

    سأشرح لنفسي مرة أخري المشكلة لعل فضفضتي معكم تنفس عن ذلك الصدر المكروب بعض ما يجد :biggrin: ان شاء الله

    البيانات مخزنة بالجدول كما بالصور بالسؤال 

    واصل هذه الفترات كما بالصورة التالية:

    1234.png.71865b12e56b1ba42953f77e1c311926.png

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

    المثال الاول:

    معطيات المستخدم : (1/12/2019) وحتي (1/12/2022)  فالنتيجة ان هنالك تغيرين خلال الفترة الموضحة

    التغير الأول من (12/2019) وحتي 3/2022 - والفرق بين التاريخين بالشهور حوالي 28 شهر وكود الفترة هو 1  وكما بالدالة فالناتج (1|28)

    اما الفترة الثانية فهي بين 4/2022 وحتي (12/2022)  والفرق بينهما بالشهور هو 8 اشهر وكود الفترة هو 2  وكذلك ناتج الدالة المطلوب  (2|8)

    المثال الثاني:

    المعطيات من المستخدم:  من (1/8/2020) الي (1/8/2023) 

    النتيجة المتوقعة من الدالة:  ثلاث فترات وهم:

    1- من (8/2020) الي 3/2022 ----> فرق 20 شهر الفترة 1 (1|20)

    2- من 4/2022 الي 1/2023 ------> فرق 9 شهر الفترة 2 (2|9)

    3- من 2/2023 الي (8/2023) --------> فرق 7 شهر الفترة 3 (3|7)

     

    حاولت افلتر البيانات باستعلام ولكن لم تكن النتائج صحيحة - لذا لجأت لاستخدام الدالة لدوران علي السجلات ومقارنة الفترات واسخراج الفرق بالشهور لكل فترة بين تاريخ البداية وتاريخ النهاية المرر للدالة من المستخدم

    أطلت وارجو ان لا اكون اثقلت 

    وجزاكم الله عنا خيرا

     

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

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

    N = Cstr(idNum)
    'وهكذا يمكن التعامل مع قيمة N كنص 

    وهذا اسلم وانتهي الأمر

    ملاحظة لا تستخدم نوع البيانات Long integer - واستخدم Double  عوضا عنها

    فلربما تحتاج لتشغيل برنامجك علي نسخ أكسس اصدارات اقدم من الاصدار الحالي لديك فتحدث معك مشكلات أنت بغنا عنها مستقبلا

    هذا والله أعلم

    • Like 1
  11. السلام عليكم ورحمة الله وبركاته

    وحشني التواصل مع اساتذتي واخوتي بالمنتدي كثيرا - ولكن مشاغل الحياة قد حالة بين هذا التواصل الذي ما يجلب لنا الا الخير 

    بادىء ذي بدأ - كل عام وحضراتكم جميعا بخير - وأسأل الله الكريم المنان أن يبارك لنا في رجب وشعبان وويفقنا فيهما للطاعات وأن يبلغنا رمضان وهو عنا راض - آمين

    وبعد تلك المقدمة الطويلة - وكما تعلمون كثرة ثرثرتي 😀 فلا تؤاخذوني بذلك -

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

    1- حصر عدد التغيرات التي حصلت خلالهما 

    2- تحديد المدة بين كل تغير والأخر 

    3- اضافة الناتج الي array  ليتم استخدامها فيما بعد

    والتفاصيل:

    هذه صورة من جدول البيانات: وفيه حركة التغير علي الاسعار تاريخ العمل و تاريخ الانتهاء بالعمل بهذا السعر وطبيعة السلعة وسعرها

    123.png.b43cb70ff439b829ae48301e552a5db0.png

     

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

    124.png.05c7e66a6a92674eed08858b83c26322.png

    وكانت النتيجة هي 28|2

    ولكن النتيجة الصحيحة المطلوبة ان تكون هكذا 28|1      و  8|2

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

    من 1/6/2018 وحتي 1/3/2022 

    وان تاريخ البداية المرر الي الدالة هو 1/12/2019 وهو واقع بين تاريخ البداية والنهاية السابقين لذي ستكون الفترة هي الفرق بين تاريخ البداية المرر الي الدالة وهو 1/12/2019 وتاريخ النهاية بالسجل وهو 1/3/2022  والناتج 28 شهر 

    اما عن كود التغير فيكون 1 وليس 2 والمستخرج من العمود TarifaID

    أما باقي الفترة وهي 36 وهي فرق المدة الممررة الي الدالة في الصورة الثانية والباقي هو 8 اشهر فهي واقعة خلال التغير الثاني بين الفترة من 1/4/2022 وحتي 1/1/2023

    وتأتي من طرح تاريخ النهاية المرر وتاريخ البداية من الدالة يعني بين 1/12/2022 وبين 1/4/2022 = 8 شهر 

    أرجو ان يكون سؤالي واضح بما يكفي - وأنا جاهز لأي استفسار ان شاء الله 

    وهذا مرفق للتعديل - أو ابداء اي فكرة او ملاحظة 

    QuestionOfficena.rar

     

    وجزاكم الله خيرا

     

     

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

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

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

    ففي الشيت الاول قام المستخدم بكتابة اسم الجهة المطول، مثل: وزارة التربية والتعليم ادارة جمصة التعليمية مدرسة الحوفة الابتدائية بنين

    وقم المستخدم الأخر بكتابة اسم الجهة القصير، مثل: مدرسة الحوفة الابتدائية 

    والمطلوبة: فكرة او طريقة ما لضم بيانات الجهة الواحدة من كلا الشيتين 

    قمت بتجربة الدوال التالية:

    1- match  

    2- search

    3-vlookup

    ولكن لا تأتي بنتائج صحيحة

    وجزاكم الله خيرا

  13. السلام عليكم ورحمة الله

    أعتذر عن التأخير 

    ولكن كنت اقوم بجولة مكثفة داخل البيانات الخاصة بحضرتك ولكون عملية التجميع صحيحة علي حسب ما اعتقد ولكن من اين اتي الاختلاف؟!

    وإليك بعد الفحص هذه الاسباب:

    1- تقرير حضرتك يقوم بالتجميع بحسب اكثر من معيار كالسنة المالية وتاريخ القيد وكود العميل وكود الحساب - وهو مصدر التقرير!                      أم الدالة فتقوم بالتجميع حسب معيار التاريخ السابق لتاريخ الاستعلام وفقط.

    2- بيانات حضرتك بها مجموعة من التواريخ غير مطابقة مع السنة المالية وكما بالصورة الثانية فان فئة البيانات من تاريخ 27-6-2022 وحتي 30-6-2022 السنة المالية الخاصة بها هي 2023 وهذا خطأ حيث ان نطاق السنة المالية يجب ان يكون 2022 حتي 30-6-2022 وان السنة المالية الجديدة تبدأ اعتبارا من 1-7-2022 اليس كذلك؟

    وهذه الصور للتوضيح 

    1237.png.6e2280155483e51c35eebab38db16923.png

     

    1236.png.58709af1317b38b24f666390513b20ee.png

    أما عن حل المشكلة:

    1- فاما ان تعدل حضرتك في تاريخ السنة المالية وان تجعل كل البيانات التي تخص سنة 2022 من 1-7-2021 وحتي 30-6-2022 وكذلك السنة المالية الجديدة 2023 والتي تبدأ من 1-7-2022 وحتي 30-6-2023 

    2- أو ان تستغني عن معيار الفلترة بالسنة المالية داخل الاستعلام الخاص بالتقرير، يعني تحذف حقل Endyear من الاستعلام.

    وبعد هذه آخر الفترة التي كانت علي الاتفاق بيننا واسأل الله أن يجزيك خيرا علي صبرك معي وتحملك ظروفي الصعبة في التوواصل

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

    اترككم في رعاية الله - متمنيا لكم ولسائر اساتذتي الافاضل بالمنتدي دوام التوفيق والسداد.

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

     

     

    • Like 1
  14. يوجد بجدول البيانات عند حضرتك معاملات بدون تاريخ 

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

    اما الدالة فتأخذ كامل الفترة السابقة لتاريخ بداية الفترة ويدخل من ضمنها الفترة الغير محدد لها تاريخ 

    ارجو ان يكون هذا واضح ان شاء الله

    فبهذا تكون النتائج مبشرة مبدأيا 

    الي ان تضبط التواريخ بالجدول وتوافينا بالنتائج ان شاء الله 

    انظر الصورة لزيادة توضيح الأمر

    123.png

×
×
  • اضف...

Important Information