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

نجوم المشاركات

  1. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      4

    • Posts

      8723


  2. عبدالله بشير عبدالله
  3. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      3

    • Posts

      13607


  4. عبدالله المجرب

    • نقاط

      1

    • Posts

      5412


Popular Content

Showing content with the highest reputation on 12/23/25 in مشاركات

  1. وعليكم السلام ورحمة الله وبركاته جرب الكود في الملف المرفق 1الجرد.xlsm
    2 points
  2. طيب انتظرني سافحص الكود لوحده خارج المنظومة
    1 point
  3. انا لم أقم بتعديل أي شيئ كل ما قمت به هو تصحيح الكود الخاص بك كالتالي السطر الأول كان هكذا Set rstE = db.OpenRecordset("SELECT * FROM Employee WHERE Nr <= 5", dbOpenDynaset) وكان يحتوي الأخطاء التالية - كنت تتعامل مع الحقل Nr في الجدول Employee على أنه حقل رقمي ولكنه حقل نصي - أعتقد أنك تظن أن هذا الحقل يحتفظ برقم الوظيفة إلا أنك مخطئ فهو يحتفظ بإسم الوظيفة والصورة التالية ستوضح لك ما أقصده مما سبق يتضح لنا أنه لن يتم تحقيق معيار التصفية Nr <= 5 لذلك قمت بتعديله إلى السطر التالي Set rstE = db.OpenRecordset("SELECT *,TblDetaché.Nr as NrE FROM Employee INNER JOIN TblDetaché ON Employee.detach = TblDetaché.detach WHERE (((TblDetaché.Nr) <= 5));", dbOpenDynaset) حيث سيتم ربط الجدول Employee مع الجدول TblDetaché وسنأخذ قيمة Nr من الجدول TblDetaché لأنه رقمي وقمنا بتسمية الحقل هذا بإسم NrE أما التعديلات التالية كلها تخص الحقل EmpID فأنت تتعامل معه كحقل نصي وهو حقل رقمي لذلك قمت بإزالة علامة الإقتباس المفردة التي قيل وبعد EmpID فمثلا 'تم تعديل هذه العبارة EmployeeID='" & EmpID & "' 'بهذه العبارة EmployeeID = " & EmpID & " اخر تعديل ونظرا لأنه وكما سبق توضيحه بخصوص الحقل Nr تم تعديل السطر التالي 'إستبدلنا هذا السطر rst!Nr = rstE!Nr 'بهذا السطر rst!Nr = rstE!NrE حتى يتم أخذ قيمة Nr من الحقل الذي قمنا بتسميته بالإسم NrE في جملة Sql أعلاه هذه هي كل التعديلات التي قمت بها فهل هذا سيؤثر على طريقة احتساب القروض؟
    1 point
  4. اخي طاهر .. خذني على قد فهمي اريدك ترفع مرفق يكون الجدول الخاص بالاقتطاعات خالي اعتقد انه الجدول tbl_Loans كما اظن وتشرح لي بالخطوات اعمل ايه من خلال النموذج .. خطوة خطوة وصورة للنتيجة المفترض الحصول عليها
    1 point
  5. الخبير الفاضل اعتذر عن ازعاجك بكثرة طلباتى ولكنى اقوم بطلب بسيط واحاول الاستفادة منة وتطبيقة على اكثر من حقل لو نجح الامر تمام لولم ينجح اقوم باكمال طلبى ولكن مافعلته فى انشاء الجدول ابداع غير مسبوق بارك الله لك وفيك شكرا خالص الشكر
    1 point
  6. السلام عليكم اخي طاهر انا ربما اختلف قليلا عن بقية اخوتي الخبراء والاعضاء هنا الغالب هنا يختصرون عليك وعليهم الوقت ويعطونك حل للمشكلة التي تواجهك مباشرة .. ولكن في بعض الاحيان المشكلة اذا لم تعالج من الاصل .. فإنها تولد مشكلات واخطاء تتبعها حينما استعرض مثالك لا يمكنني فهم آلية العمل : خذ ما دار في بالي : اولا لماذا الاقتطاع وتخصيصه شهري 3 و 7 فقط ... يجب ان نفهم لماذا؟ يجب ان يكون الجواب مقنع علما انه ومن خلال الجدول يوجد اقتطاعات في اشهر اخرى لا يخفى عليك . معظم .. بل كل .. عمليات القروض التي تخص العاملين والموظفين في كل الأنظمة يتم اقتطاعها من المرتب شهريا .. الى ان يتم تسديد كامل القرض مثلا اذا الموظف مطالب بتسديد 3000 دينار سنويا .. ستكون الحصة الشهرية 250 دينار تخصم من مرتبه آليا حتى لو هناك قروض اخرى يضاف استحقاقها الشهري في عمود يخصها .. والنتيجة ان الموظف يستلم مرتب شهري صافي بعد اقتطاع المستحق هنا العملية تكون انسيابية ولسنا بحاجة الى اكواد فقط استعلام واحد يقوم بالمهمة . ثانيا لاحظت ان نوع الوظيفة او رقمها يختلف من موظف الى آخر .. الى هنا صحيح ولكن حالاات الموظف تختلف فمسمى الوظيفة يجب ان يكون ثابتا ولا يتغير الا في حال الترقية .. وغالبا مسمى الوظيفة يرتبط فقط في المرتب الاساسي والعلاوات وانت جعلت الوظيفة حالاات يجب ان تكون الحالة في حقل منفصل لا دخل للوظيفة بها مثلا مدير توفي يبقى المسمى مدير ولكن الحالة متوفى وهنا تطبق المزايا والضوابط على الحالة وليس على مسمى الوظيفة ظهر لي هذا الخلل عندما غيرت الرقم في Nr من 1 الى 15 تحولت جميع السجلات الى 15 وهذا ايضا خطأ لأن الواجب ان ما سبق تسديده وقت حياته لا يتغير
    1 point
  7. شكرا استاذي العزيز
    1 point
  8. السلام عليكم انجاز عظيم بارك الله بجهودك استاذي الفاضل فعلا اداة رهيبة استعملت كل الخيارات فيها ولتهت بنتائج مبهرة بامتياز جعله الله في ميزان حسناتك استاذي الكريم
    1 point
  9. اليك ما طلبت بالتنسيق الشرطي aaaa2.xlsm
    1 point
  10. وعليكم السلام ورحمة الله وبركاته جرب هذا تسلسل ملئ بيانات الفورم1.xlsm
    1 point
  11. تفضل جرب اخي ووافينا بالنتيجة Sub RefreshData() ' تعديل Dim i As Long, k As Long Dim last_Dest As Long, lastrow As Long Dim ws_data As Worksheet: Set ws_data = Worksheets("data") For Each ws_dest In ThisWorkbook.Worksheets lastrow = ws_data.Cells(ws_data.Rows.Count, 1).End(xlUp).row last_Dest = ws_dest.Cells(ws_dest.Rows.Count, 1).End(xlUp).row Application.ScreenUpdating = False For i = 2 To lastrow For k = 2 To last_Dest 'في حالة وجود اوراق اخرى على المصنف قم باظافتها هنا If ws_dest.Name <> ws_data.Name And ws_dest.Name <> "اليومية" And ws_dest.Name <> "ورقة6" Then ' شرط تطابق عمود التسلسل وعمود التوجيه If ws_dest.Cells(k, 1).Value = ws_data.Cells(i, 1).Value And _ ws_dest.Cells(k, 2).Value = ws_data.Cells(i, 2).Value Then _ 'في حالة تحقق الشرط ws_dest.Cells(k, 3).Value = ws_data.Cells(i, 3).Value 'التاريخ ws_dest.Cells(k, 4).Value = ws_data.Cells(i, 4).Value ' البيان ws_dest.Cells(k, 5).Value = ws_data.Cells(i, 5).Value 'مدين ws_dest.Cells(k, 6).Value = ws_data.Cells(i, 6).Value 'دائن ws_dest.Activate 'تسطير تلقائي للبيانات DL = ws_dest.Range("A65500").End(xlUp).row DC = ws_dest.Cells(1, Columns.Count).End(xlToLeft).Column ws_dest.Columns("A:F").Borders.LineStyle = xlNone ws_dest.Range(Cells(2, 6), Cells(DL, DC)).Borders.Weight = xlThin End If End If Next Next Next ws_dest ws_data.Activate MsgBox "تم التعديل بنجاح", 64 Application.ScreenUpdating = True End Sub Sub transfer_data() ' ترحيل Dim Sh As Worksheet Dim ws_data As Worksheet: Set ws_data = Worksheets("data") For Each Sh In ThisWorkbook.Worksheets For R = 2 To [B20000].End(xlUp).row If Cells(R, 2).Value = Sh.Name And Cells(R, 2).Value <> Empty Then Application.ScreenUpdating = False Cells(R, 2).Resize(1, 5).Copy Sh.Range("B" & Sh.[B20000].End(xlUp).row + 1) End If Next Next For Each Sh In Worksheets 'في حالة وجود اوراق اخرى على المصنف قم باظافتها هنا If Sh.Name <> "اليومية" And Sh.Name <> "data" And Sh.Name <> "ورقة6" Then Sh.Activate Sh.Range("A3:A1000").ClearContents Sh.Range("A3") = 1 Sh.Range("A3:A" & Range("B" & Rows.Count).End(xlUp).row).DataSeries , xlDataSeriesLinear DL = Sh.Range("A20000").End(xlUp).row DC = Sh.Cells(1, Columns.Count).End(xlToLeft).Column Sh.Columns("A:F").Borders.LineStyle = xlNone Sh.Range(Cells(2, 6), Cells(DL, DC)).Borders.Weight = xlThin End If Next MsgBox ("تم بحمد الله ترحيل القيود لا تنسى أن تشكر الله علي هذه النعم "), vbOKOnly + vbInformation, "لاتنسونا من صالح الدعاء لنا ولولدينا وللمسلمين" ws_data.Activate Application.ScreenUpdating = True End Sub استدعاء من عدة شيتات- V3.xlsm
    1 point
  12. من الملفات القديمة التي تمت مشاركتي لها والتي تطلب غالباً كيف نحمي الخلايا غير الفارغة بواسطة باسوورد (الباسورد في الملف / الخلية H3/ يمكن حفظة و مسحه عن عيون الفضوليين) مع حرية الغاء الجماية كما تشاء protect non empty data with Pass word.xlsm
    1 point
  13. اليك الملف بعد اضافة المعادلة تحياتي كشف لمن غاب اكثر من 3.xlsm
    1 point
  14. السلام عليكم تم التعديل على ملف أخي سليم بإضافة كل الشهور في شيت واحد مع إضافة كود لإظهار الشهر المعني فقط وهذا لأجل الإحصائيات السنوية... يمكن إضافة التعديلات الأخرى الجديدة على هذا الملف... بالنسبة لأيام العطل الأخرى (غير عطلة نهاية الأسبوع) يكفي أن لا نسجل فيها الغيابات... والله أعلم أرجو أن تسهل هذه التعديلات العمل على الملف... أخوكم بن علية كشف hben.xlsm
    1 point
  15. ممكن ذلك شاهد هذا الملف (العملية تتم عند كبسة اليمين وليس دوبل كليك في نطاق محدد ) كله قابل للتغيير حسب المطلوب Right_Click.xlsm
    1 point
  16. ملف جيد و الى الامام لكن ارجو تقبل بعض الملاحظات: 1- لا ضرورة لتحميل ملف كبير بهذا الشكل يكفي ملف صغير مختصر 20 الى 30 صف (نموذج ) والذي يريد اضافة معلومات يكون الامر متاحاً له 2- لا ضرورى لادراج التواريخ يدوياً في كل صفحة من صفحات الشهور (يكفي عمل نسخات (12 نسخة) عن الورقة Salim من هذا الملف واختيار الشهر والسنة و بوم العطلة في كل نسخة) ثم تسمية هذه الصفحات باسماء الشهور اذا اردت ليقوم اكسل بادراج التواريخ ألياً (كما في الصفحة Salim) مع حساب الشهر 28و29و30 أو 31 و تاوين يوم العطلة كما تحدده في الخلية A3 3 -هذه الورقة صالحة لكل الاعوام الدراسية (يكفي تغيير السنة فقط من الخلية A1) في كل صفحة من صفحات الشهور الملف (كنموذج) مرفق كشف Salim.xlsm
    1 point
  17. نسخة من الملف بتنسبق 2003 protect non empty data with Pass word.xls
    1 point
  18. اخي الكريم ابو أحمد السلام عليكم ورحمة الله وبركاته تم ضبط كود شهر نوفمبر بالمرفقات مع تحياتي Charts Form.rar
    1 point
  19. استاذى الفاضل دغيدى رغم اننى لا اعمل فى المرتبات ولا فى الحكومة الا اننى اتمنى ان تكون هذه الاجابة صحيحة و طريقتها كالتالى الطبقة الأولى نحذف 50 ج من المبلغ لأنها معفاة ثم الطبقة الثانية أزيد من 50 حتى 250 ج(6 فى الألف ). الثالثة أزيد من 250 حتى 500 ج (6.5 فى الألف ). الرابعة أزيد من 500 حتى 1000 ج(7 فى الألف) . الخامسة أزيد من 1000 حتى 5000 ج (7.5 فى الألف) . السادسة أ زيد من 5000 حتى 10000 ج (8 فى الألف) . كل مبلغ يزيد عن 10000 ج تخضع الزيادة لسعر 3 فى الألف . مرفق برنامج جاهز من اعمال المحاسب صلاح مدكور وبرنامج اكسيل ارفقه اخى ابوحنين ولكنه لم يشر فيه الى وجود معادله تحسب الضريبة فى العمود b البرنامج مجرب بدليل اكتب مبلغ اقل من 50 جنية لن يعطى لك مبلغ الدمغة لانها معفاه اتمن ان اكون وفقت فى تقديم معلومة مفيدة لحضرتك اخوك سعد عابد برنامج للدمغة.rar الدمغة.rar
    1 point
  20. السلام عليكم هذا فديو يشرح التصفية المتقدمة التى تتميز بإمكانية نقل البيانات المفلترة إلى شيت آخر كما تمكننا من مميزات أخرى ========== الفديو ========== وقتا ممتعا الملف المستخدم بالشرح بالمرفقات الجزء الثانى التصفية المتقدمة شرح.zip
    1 point
  21. اولاً الف مليون شكر للاستاذ مصطفى على حله الرائع ثانيا اخي محمود المرفق فيه المطلوب (الحل بالتصفية المتقدمة) ابواحمد محمود علاء.rar
    1 point
×
×
  • اضف...

Important Information