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

أ / محمد صالح

أوفيسنا
  • Posts

    3,373
  • تاريخ الانضمام

  • Days Won

    92

كل منشورات العضو أ / محمد صالح

  1. المنتدى هنا مليء بموضوعات تعليمية وشرح مصور وفيديو يحتاج فقط من يبحث عنها كنوووووز
  2. عليكم السلام و رحمة الله وبركاته تنسيق رائع بارك الله لك اقتراحاتي: * وجود شيت تسجيل بيانات الدوام ويكون فيه مسلسل ورقم الموظف وأربعة أوقات دخول وخروج (Maint & apres M) وتاريخ اليوم وأي ملاحظات أخرى * تعديل شكل التقرير الشهري ليكون رأسيا ولموظف واحد وكذلك السنوي (طالما تحرص على عرض 4 أوقات) لكن إذا كان الهدف عرض إجمالي التأخير أو الإضافي بدون التوقيتات الأربعة فيمكن عمل التقرير أفقيا بالتوفيق
  3. جميعا بإذن الله أنا ما فعلت شيئا سوى ضبط بعض الجمل في ترتيبها حتى الزميل قلب الأسد قام بتعريف المتغيرات واختصار بعض السطور فقط بالتوفيق
  4. يمكنك استعمال هذا الكود للإخفاء Sub hideblank() For n = 2 To 151 If Cells(5, n) = "" Then Columns(n).Hidden = True Next n End Sub وهذا لإظهار الكل Sub showblank() Columns("b:eu").Hidden = False End Sub بالتوفيق
  5. الخطأ في الكود الأصلي أنا فقط قمت بإعادة ترتيب أوامره في أي سطر يظهر الخطأ؟
  6. الكود صحيح ما دام يعمل على بعض الأجهزة ولا علاقة له بنسخة 64 أو 32 ولكن به بعض من عدم الترتيب جرب هذا التعديل في ترتيب الأكواد Sub ترتيبي() Prompt = "إذا أردت الإستمرار فانتظر لأن الترتيب يأخذ بعض الوقت " Command_buttons = vbYesNo + VbMsgBoxRt1Reading Title = "هل تريد ترتيب البيانات بعد التغيرات الجديدة ؟؟ " project = MsgBox(Prompt, Command_buttons, Title) If project = vbYes Then Application.ScreenUpdating = False Application.Calculation = xlCalculationManual With ActiveWorkbook.Worksheets("master").Sort .SortFields.Clear .SortFields.Add2 Key:=Range("BV8:BV6053"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= xlSortNormal .SortFields.Add2 Key:=Range("BT8:BT6053"), SortOn:=xlSortOnValues, Order:=xlDescending, DataOption:= xlSortNormal .SortFields.Add2 Key:=Range("C8:C6053"), SortOn:=xlSortOnValues, Order:=xlAscending, DataOption:= xlSortNormal .SetRange Range("B8:BW6053") .Header = xlGuess .MatchCase = False .Orientation = xlTopToBottom .SortMethod = xlPinYin .Apply End With Call MsgBox(" تم الترتيب بنجاح ", mBox, "الحمد لله ") Application.Calculation = xlCalculationAutomatic Application.ScreenUpdating = True End If End Sub بالتوفيق
  7. نظرا لوجود معادلة في العمود F ويكون ناتجها 0 في حالة عدم وجود أرقام ينبغي تعديل معادلة العد في الخلية R4 إلى =COUNTIFS(B:B,Q4,F:F,">"&0) بالتوفيق
  8. بعد مراجعة هذا الجزء ستتوصل إلى أن 4000 ضمن 1٪ أما 4001 فهي ضمن 1.5٪ كما أن صاحب الاستفسار ما أشار إلى أن المتبقي من المبلغ بعد الشريحة السابقة يضرب في نسبة كذا ولكن قال يضرب المبلغ في نسبة كذا
  9. لا يوجد حلقات مفقودة تم تعديل حل أستاذ سليم في نسب الخصم من أستاذ بن علية وهذا تعديل بداية ونهاية الخصم ويمكن استعمال دالة trunc أو round للحصول على عدد المنازل العشرية المطلوب في المبلغ إن شاء اللّه هو المطلوب بالتوفيق نسب شرائح الخصم.xlsx
  10. أخي الكريم اعذرني طريقة تنظيم الملف لا تساعد في الوصول للمطلوب تحتاج أولا إلى استعمال تنسيق الوقت 24 لضبط مواعيد الفترة الثانية وكل المواعيد بعد 12 ظهرا لأنها مثلا تعتبر 12:45 أكبر من 1:00 وأقترح توفير عمودي موعد الحضور في الفترتين وكتابتهم في خليتين أعلى الجدول لأنهم ثابتان طوال الشهر بعد الحصول على مدة التأخير الصحيحة يمكن عمل الشروط الخاصة بالخصم عليها فيما يخصص دقائق التأخير وهذه معادلة مقترحة لحساب تأخير 1 وتأخير 2 بالتوفيق دوام ماهر الغيلي.xlsx
  11. جرب حذف = التي قبل address أو إن شاء الله يفيدك هذا الموضوع المشابه بالتوفيق
  12. أخي الكريم تركيبة الملف لا تسمح بعمل معادلة واحدة للجميع يتم سحبها أفقيا ورأسيا لذلك يتم تحديد عمود المنتج الخاص بالفرع واستعماله في المعادلة فمثلا المنتج الرابع في الفرع الثاني عموده j لذلك معادلة العدد =COUNTIFS(L:L,O15,J:J,"<>") ومعادلة المبلغ =SUMIFS(J:J,L:L,O15) بالتوفيق
  13. يمكنك استعمال هذه المعادلة لعدد العمليات في الخلية P15 =COUNTIFS(L:L,O15,B:B,"<>") واستعمال هذه في الخلية Q15 للحصول على قيمة العمليات =SUMIFS(B:B,L:L,O15) مع نسخ المعادلة لأسفل وبنفس الطريقة يمكنك تعديل المعادلتين للوصول للمنتج التالي بالتوفيق
  14. عليكم السلام ورحمة الله وبركاته يفضل إرفاق مثال من الملف للعمل عليه وسيراعي الكود زيادة عدد الصفوف
  15. هذا الخطأ يظهر نتيجة إغلاق النموذج من زر الإغلاق والصواب حسب الكود كلك يمين على الزر الأيمن للساعة ولتعديل ذلك حتى ينتهي تنفيذ الكود مع الغلق من زر الغلق نقل آخر سطر من حدث UserForm_Initialize إلى حدث.UserForm_Activate مع إضافة هذا الحدث الخاص بزر الإغلاق Private Sub UserForm_QueryClose(Cancel As Integer, CloseMode As Integer) OK = False Me.Hide End Sub بالتوفيق
  16. عليكم السلام و رحمة الله وبركاته كلك يمين على الحقل المراد تنسيقه ثم اختيار Toggle Field Codes تبديل رموز الحقول إضافة التنسيق قبل قوس الغلق ليصبح هكذا {MERGEFIELD FieldName \#0.0} حيث FieldName اسم الحقل المراد تنسيقه بالتوفيق
  17. إذا تم تحويل الجدول إلى نطاق convert table to range من تبويب تصميم الجدول table design مع تغيير العمود E في هذا السطر Range("b2:h" & Cells(Rows.Count, "E").End(xlUp).Row).Copy إلى العمود B ستحصل على ما تريد بالتوفيق
×
×
  • اضف...

Important Information