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

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

قام بنشر (معدل)

السلام عليكم

أريد كود إذا وجد يوم الجمعة يقوم بتلوين أسفله بحسب عدد الأسماء الموجود فى العمود B ويتم وضع حرف V فى العمود وP فى باقى الأعمدة(مرفق الملف وصورة للتوضيح)

صورة توضح المطلوب (حاولت كثيراً لكن الكود لا يضبط )

Capture.PNG

حضور وإنصراف.xlsbFetching info...

تم تعديل بواسطه abdelfattahbadawy
قام بنشر

الكود:
 

    Sheets("Base").Select
    Range("D7:AH15").Select
    Selection.FormatConditions.Delete
    
    Selection.FormatConditions.Add Type:=xlExpression, Formula1:= _
        "=WEEKDAY(D$6)=" & vbFriday
    Selection.FormatConditions(Selection.FormatConditions.Count).SetFirstPriority
    With Selection.FormatConditions(1).Interior
        .PatternColorIndex = xlAutomatic
        .ThemeColor = xlThemeColorAccent2
        .TintAndShade = 0.399945066682943
    End With
    Selection.FormatConditions(1).StopIfTrue = False
    
    MsgBox "Done"

 

  • Like 1
قام بنشر

بخصوص كتابة كلمة v&p انا استخدمت ذلك الكود لكنة ينفذ حتى سطر 1015

   Dim A As Range
    For Each A In Range("D7:AH15" & Cells(Rows.Count, "A").End(xlUp).Row)
       If Not IsError(A) Then
        If A.Interior.Color = grey Then
              A.Value = "V"
          ElseIf A.Interior.Color = white Then
              A.Value = "P"
          Else
               A.Value = "N"
           End If
       End If
'    Next A

لا أدرى ما المشكلة

قام بنشر

فى الخلايا التى ليس بها يوم الجمعة كنت أريد الكود يقوم بوضع حرف P  والخلايا التى تحتوى على يوم الجمعة وتم تلوينها يضع حرف V الكود أعلاه جربته بس ما ظبط معى ومشكور أولاً وأخيراً على ردك واهتمامك

قام بنشر (معدل)

بعد ادن الاخ @AbuuAhmed اليك حل اخر  على حسب  الشروط  المدكورة والصورة المرفقة في  في اول مشاركة 

 

Sub Color_Friday()

Dim lastCol&, LastRow&, i&, j&, lr&, Search As String
Dim WS As Worksheet: Set WS = ThisWorkbook.Worksheets("Base")

 Search = "الجمعة"
 
Application.ScreenUpdating = False
 With WS
 lr = .Columns("A:B").Find(What:="*", SearchDirection:=xlPrevious, SearchOrder:=xlByRows).Row
    lastCol = .Cells(5, WS.Columns.Count).End(xlToLeft).Column
       LastRow = .Range("B" & .Rows.Count).End(xlUp).Row
        WS.Range("D5:AH" & lr).Interior.ColorIndex = xlNone
        .Range(Cells(5, 4), Cells(6, lastCol - 4)).Interior.Color = RGB(217, 217, 217)
    
    If lr > 6 Then
     .Range(Cells(7, 4), Cells(lr, lastCol - 4)).ClearContents
    End If
    For j = 7 To LastRow
        If .Cells(j, 2) <> "" Then
        .Range(Cells(7, 4), Cells(LastRow, lastCol - 4)).Value = "V"
   End If
For i = 4 To lastCol
    If WS.Cells(5, i).Value2 Like Search Then
        .Range(Cells(7, i).Address, Cells(LastRow, i).Address).Value = "P"
        .Range(Cells(5, i).Address, Cells(LastRow, i).Address).Interior.ColorIndex = 40
        
             End If
          Next
       Next
   End With
   Application.ScreenUpdating = True

End Sub

 

حضور 2وإنصراف.xlsbFetching info...

تم تعديل بواسطه محمد هشام.
  • Like 2
قام بنشر
  في 24‏/12‏/2023 at 07:51, abdelfattahbadawy said:

كود إذا وجد يوم الجمعة يقوم بتلوين أسفله بحسب عدد الأسماء الموجود فى العمود B ويتم وضع حرف V فى العمود وP فى باقى الأعمدة

Expand  

أعرف سؤالي قد يكون تطفلا، وما دفعني للسؤال لغرابة الطلب، أنا توقعت ستملأ الخلايا ببيانات متغيرة وليست ثابتة كـ "V" و "P".
ربما لو توضح لنا الهدف اختصرنا لك كل هالتصميم والكود بدالة صغيرة من خمسة سطور تعطيك المعلومة المطلوبة بسهولة.

  • Like 1
قام بنشر
  في 26‏/12‏/2023 at 05:38, AbuuAhmed said:

أعرف سؤالي قد يكون تطفلا، وما دفعني للسؤال لغرابة الطلب، أنا توقعت ستملأ الخلايا ببيانات متغيرة وليست ثابتة كـ "V" و "P".
ربما لو توضح لنا الهدف اختصرنا لك كل هالتصميم والكود بدالة صغيرة من خمسة سطور تعطيك المعلومة المطلوبة بسهولة.

Expand  

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

قام بنشر

إذن في حالة الغياب ستبدل "P" بحرف "A" مثلا؟

اقتراحي لا داعي لكتابة "P" للحضور، ولا "V" لعطلة نهاية الأسبوع.
أنت تحتاج فقط:
كتابة "A" من Absent في حالة الغياب فقط.
وكتابة "V" من Vacation في حالة كونه في إجازة.

أما عطلة نهاية الأسبوع لا تحتاج إلى كتابة، وعند الرغبة فليكن حرفها "W" من Weekend.
ويمكن التحكم عند الكتابة بمنع الإدخال في خانة عطلة نهاية الأسبوع كذلك ومنع إدخال غير الحروف المطلوبة.

سؤال آخل ماذا لو عمل الموظف أيام العطل الأسبوعية، هل ستضع له حرفا جديدا أم ستستخدم حرف "P" أيضا؟
 

  • Like 2
قام بنشر (معدل)
  في 26‏/12‏/2023 at 06:22, AbuuAhmed said:

إذن في حالة الغياب ستبدل "P" بحرف "A" مثلا؟

اقتراحي لا داعي لكتابة "P" للحضور، ولا "V" لعطلة نهاية الأسبوع.
أنت تحتاج فقط:
كتابة "A" من Absent في حالة الغياب فقط.
وكتابة "V" من Vacation في حالة كونه في إجازة.

أما عطلة نهاية الأسبوع لا تحتاج إلى كتابة، وعند الرغبة فليكن حرفها "W" من Weekend.
ويمكن التحكم عند الكتابة بمنع الإدخال في خانة عطلة نهاية الأسبوع كذلك ومنع إدخال غير الحروف المطلوبة.

سؤال آخل ماذا لو عمل الموظف أيام العطل الأسبوعية، هل ستضع له حرفا جديدا أم ستستخدم حرف "P" أيضا؟
 

Expand  

تمام أخى أبو أحمد لكن إثراءاً للمناقشة كيف يتم منع الادخال فى خانة عطلة نهاية الاسبوع بالكود أم بالتنسيق الشرطى ؟

بخصوص عمل الموظف يوم الجمعة فغالباً وعلى مدار ال10 سنوات لا يعمل الموظف معنا يوم الجمعة 

تم تعديل بواسطه abdelfattahbadawy
قام بنشر (معدل)

محاولة منى، مع وجود طريقة أخرى باستخدام حماية الخلايا ولكنها تحتاج عناية كبيرة، هذه أعتقد تفي بالغرض.

ظهر لي خلل فجأة ثم حاولت في حدوثه مرة أخرى لمعرفة السبب وحل المشكلة ولكنه اختفى!!.
 

 

حضور وإنصراف_04.xlsbFetching info...

تم تعديل بواسطه AbuuAhmed
  • Like 2
قام بنشر
  في 26‏/12‏/2023 at 09:47, AbuuAhmed said:

محاولة منى، مع وجود طريقة أخرى باستخدام حماية الخلايا ولكنها تحتاج عناية كبيرة، هذه أعتقد تفي بالغرض.

ظهر لي خلل فجأة ثم حاولت في حدوثه مرة أخرى لمعرفة السبب وحل المشكلة ولكنه اختفى!!.
 

 

حضور وإنصراف_04.xlsb 39.11 kB · 0 downloads

Expand  

جزاك الله خيراً على تعبك واهتمامك

أعتقد الخلل بيحصل لما يكون الشهر 28 يوم حدثت معى أكثر من مرة  

 

  • تمت الإجابة
قام بنشر
  في 26‏/12‏/2023 at 10:21, abdelfattahbadawy said:

أعتقد الخلل بيحصل لما يكون الشهر 28 يوم حدثت معى أكثر من مرة

Expand  

تم إصلاح الخلل وعمل عدة تنقيحات:

حضور وإنصراف_05.xlsbFetching info...

  • Like 2
قام بنشر

جزاك الله خيراً ونفع بك وزادك من علمه وبسط عليك من رزقه وغفر لك ولوالديك وأخى محمد هشام وجميع القائمين على هذا المنتدى .

 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

زائر
اضف رد علي هذا الموضوع....

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

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

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

Important Information