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

أ / محمد صالح

أوفيسنا
  • Posts

    4469
  • تاريخ الانضمام

  • Days Won

    195

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

  1. ربما يوجد مرجع مفقود في محرر الأكواد من قائمة tools ثم references ثم احذف علامة الصح بجانب المرجع المكتوب قبله missing بالتوفيق
  2. يمكنك استعمال هذه الطريقة بوضع السيريلات المسموحة في مصفوفة myserials بينها فاصلة Private Sub Workbook_Open() myserials = Array("589CC486", "mr-mas.com", "") myhd = Hex(CreateObject("Scripting.FileSystemObject").Drives.Item("C:").SerialNumber) If Not UBound(Filter(myserials, myhd)) > -1 Then MsgBox "أي رسالة هنا" ThisWorkbook.Close savechanges = True End If End Sub بالتوفيق
  3. الشكر لله الذي وفقنا لهذا
  4. ما شاء الله تنسيق ولا أروع وعمل ومجهود راقيان وفقكم الله وسدد خطاكم
  5. حسب فهمي للمطلوب تم تنفيذ المعادلة على العمود الأول E وإذا أردت تطبيقها على العمود التالي يمكنك تغيير الخلية $E$1 في المعادلة الموجودة في الصف الثاني بالتوفيق mas tableau.xlsx
  6. الطريقة المذكورة في المشاركة السابقة لي أفضل واسرع بإذن الله
  7. أقترح تنفيذ ذلك يدويا وليس بالكود عن طريق عمل لصق كقيم paste as values بدلا من لصق paste ورمزها (123) في القائمة المختصرة للخلية والتي تظهر بعد عمل كلك يمين عليها وإذا كنت حريصا على استخدام الكود فيمكنك وضع هذا الاجراء في موديول جديد وربطه بزر وليكن اسمه لصق Sub pst Selection.PasteSpecial Paste:=xlPasteValues End Sub وهو للصق ما تم نسخه في الخلية المحددة ولاستخدام هذا الاجراء عند الضغط على CTRL+V يمكن وضع هذا الكود في حدث المصنف ThisWorkbook Private Sub Workbook_Activate() Application.OnKey "^v", "pst" End Sub Private Sub Workbook_Deactivate() Application.OnKey "^v" End Sub بهذه الطريقة تحافظ على تنسيق الملف الذي يتم اللصق فيه عند استخدام الزر المرتبط بالكود أو اللصق باستخدام ctrl+v بالتوفيق
  8. ربما يكون في الرأس والتذييل header & footer في تبويب تحطيط الصفحة page layout ثم مربع إعداد الصفحة page setup ثم تبويب header/footer بالتوفيق
  9. للأسف هذه الطريقة في الفلترة بالمعادلات المتبعة في ملفكم تجعل الملف ثقيلا جدا لذلك يمكنك تحديد المدى الذي كنت تسحب فيه المعادلة لأسفل كله ثم حذف المعادلة منه بضغط مفتاح delete من لوحة المفاتيح مع إبقاء تحديد الخلايا ثم لصق نفس المعادلة في شريط المعادلات مع تغيير row($a1) إلى row()-5 إذا كان هناك 5 صفوف فوق صف البداية وفي النهاية الضغط على ctrl+shift+enter بهذا نكون وضعنا معادلة واحدة في جميع الصفوف المحددة وهذه اسرع طريقة للفلترة بالمعادلات بالتوفيق
  10. الخطأ هو أن العمود رقم 9 فارغ ولا يتم ترحيل بيانات إليه لذا يمكن تغيير هذا السطر erow = sh1.Cells(Rows.Count, 9).End(xlUp).Offset(1, 0).Row إلى erow = sh1.Cells(Rows.Count, 4).End(xlUp).Offset(1, 0).Row بالتوفيق
  11. حسب فهمي للمطلوب يمكنك إضافة هذا الكود في نهاية إجراء الطباعة Sub PRINT_OUT lr = Cells(Rows.Count, 1).End(xlUp).Row For r = 8 To lr rw = Application.WorksheetFunction.Match(Range("A" & r).Value, Sheets("التحميل").Range("A:A"), 0) Sheets("التحميل").Range("Q" & rw).Value = "تم الصرف" Next r وهو للحصول على رقم الصف الذي يحتوي على رقم المستند الموجود في الخلية A8 وما بعدها عند البحث عنه في العمود A في شيت التحميل ثم تغيير قيمة الخلية Q في نفس الصف إلى تم الصرف بالتوفيق
  12. بعد إذن جميع المشاركينفي هذا الموضوع الرائع لتحديد الأيام المفقودة يلزم تحديد تاريخ البداية Start Date وتاريخ النهاية End Date ليتم حصر الأيام الموجودة بين التاريخين وكذلك الأيام المفقودة وذلك كله بدلالة رقم الموظف Emp ID تكتب مرة واحدة وتحصل على تقرير لكل موظف ربما يكون هذا هو المطلوب بإذن الله تم جلب أصغر تاريخ للموظف ليكون تاريخ البداية وأكبر تاريخ ليكون تاريخ النهاية ويمكن استعمال أصغر تاريخ في العمود كله Min وأكبر تاريخ في العمود كله Max ويمكن كتابة التاريخين يدويا للحصول على بيانات هذه الفترة واستنتاج الأيام المفقودة بين التاريخين بمعادلة مصفوفات Array formula مطبقة على الخلايا j10:j40 بالتوفيق الأيام المفقودة بين تاريخين لكل موظف.xlsx
  13. يمكنك استعمال هذا الكود على افتراض أن مربع النص اسمه textbox1 Private Sub TextBox1_Enter() TextBox1.Value = "" End Sub بالتوفيق
  14. تمت معالجة هذا الأمر كثيرا في المنتدى ربما يفيدك هذا الرابط
  15. حسب فهمي للمطلوب * لعرض أسماء الشيتات في القائمة يمكنك حذف هذا الكود من حدث إلغاء تفعيل Worksheet_Deactivate لشيت database Dim w As Worksheet UserForm1.Co1.Clear For Each w In ThisWorkbook.Worksheets UserForm1.Co1.AddItem w.Name Next w ووضعه في حدث تفعيل النموذج UserForm_Activate * ولفتح الشيت الذي يتم اختياره من القائمة نستعمل هذا الكود في حدث تغيير القائمة بالضغط دبل كلك عليها في النموذج ولصق السطر الأوسط من هذا الكود فقط Private Sub Co1_Change() Sheets(Co1.Value).Select End Sub بالتوفيق
  16. حسب فهمي للمطلوب يمكنك استعمال هذه المعادلة في الخلية j17 في sheet1 =TRANSPOSE('2nd'!H19:O19)
  17. بعد إذن جميع المشاركين إذا جربنا وضع الرقم 10 كدرجة رئيسية والرقم 90 و 300 كدرجات ثانوية سنتأكد من صحة المعادلتين في هذا الملف المرفق خالص الدعوات بالتوفيق الزاوية الأقرب.xlsx
  18. نسخة أوفيس 2016 وكذلك 2019 وكذلك 365 جميعها رقم الإصدار الرسمي لها 16.0 ربما يفيدك هذا الرابط
  19. تفضل أخي الكريم إن شاء الله يكون المطلوب mas_مدد الخدمة المسجلة بالتامينات.xls
  20. ما شاء الله إبداع بارك الله لك صديقي العزيز رمضانكم مبارك
  21. جميل جدا أخي الكريم @mohamed_omar ولكن الأستاذ صاحب السؤال رجاء توضيح القضية حيث أني أعمل بالترتبية والتعليم ولا علم لي بهذا الأمر
×
×
  • اضف...

Important Information