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

برنامج حضور و غياب


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

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

البرنامج المرفق يجاجة الى تكملة كود لشاشتين  الاولى تقوم اختيار من الاسم فتظهر الاحصائية الخاصة بالاسم 

و الثانوية اختيار يوم يظهر اسماء الغياب اليومي و الشهر تظهر اسماء الغياب من اليوم و الشهر 

3.png

2.png

asb2022.xlsm

رابط هذا التعليق
شارك

  • 2 weeks later...

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

الاخ @hassona229 المطلوب الاول: الشاشة الاولى عند اختيار الاسم يظهر بيانات الاعمدة من شيت كشف من العمود  aj  الى aq

الشاشة الثانية :  شاشة استعلام   غياب اليومي   او غياب يهظهر من غاب خلال الشهر 

و شكرا 

رابط هذا التعليق
شارك

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

5 ساعات مضت, محمد عدنان said:

المطلوب الاول: الشاشة الاولى عند اختيار الاسم يظهر بيانات الاعمدة من شيت كشف من العمود  aj  الى aq

تفضل ضع هذا الكود في الفورم المسمي kh

Private Sub ComboBox1_Change()
    Dim X, Ws As Worksheet
    Set Ws = ThisWorkbook.Worksheets("كشف")
    X = Application.Match(ComboBox1, Columns(4), 0)
    If Not IsError(X) Then
        TextBox5 = Ws.Cells(X, "Aj")
        TextBox6 = Ws.Cells(X, "Ak")
        TextBox7 = Ws.Cells(X, "AL")
        TextBox8 = Ws.Cells(X, "AM")
        TextBox9 = Ws.Cells(X, "AN")
        TextBox10 = Ws.Cells(X, "AO")
        TextBox11 = Ws.Cells(X, "AP")
        TextBox12 = Ws.Cells(X, "AQ")
    End If
End Sub

 

الطلب الثاني ماهي شكل النتائج التي تريد عرضها في الليست بوكس ؟

رابط هذا التعليق
شارك

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

اخى انا طلبت صورة لشكل النتائج 

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

صوره لشكل النتائج 

جرب هذا الكود لعله يفي بالمطلوب

Option Explicit
Private Sub UserForm_Initialize()
    ComboBox3.RowSource = "كشف!$AU$1:$AU$12"
End Sub
Private Sub CommandButton1_Click()
    Absence "day"
End Sub

Private Sub CommandButton3_Click()
    Absence "month"
End Sub

Sub Absence(All As String)
    Dim Ws As Worksheet, X, iCol As Long, r As Long, N As Long, jCol, I
    Set Ws = ThisWorkbook.Worksheets("كشف")
    ListBox1.Clear
    ListBox1.ColumnCount = 3
    ListBox1.ColumnWidths = "80 pt;80 pt;80 pt"
    ListBox1.Font.Size = 14
    ListBox1.Font.Bold = True
    If All = "day" Then
        If ComboBox2 = "" Or ComboBox3 = "" Or ComboBox4 = "" Then MsgBox "لا يوجد بيانات", vbExclamation: Exit Sub
        X = Application.Match(CDbl(CDate((ComboBox2 & "/" & ComboBox3 & "/" & ComboBox4))), Ws.Range("E7:AI7"), 0)
        If Not IsError(X) Then
            iCol = X + 4
            jCol = iCol
        Else
            MsgBox "لا يوجد بيانات", vbExclamation: Exit Sub
        End If
    Else
        iCol = 5
        jCol = 35
    End If

    For I = iCol To jCol
        For r = 8 To Ws.Cells(Rows.Count, "D").End(xlUp).Row
            If Ws.Cells(r, I).Value <> "" Then
                ListBox1.AddItem
                ListBox1.List(N, 0) = Ws.Cells(r, 4).Value
                ListBox1.List(N, 1) = Ws.Cells(r, I).Value
                ListBox1.List(N, 2) = Ws.Cells(7, I).Value
                N = N + 1
            End If
        Next r
    Next I
End Sub

 

رابط هذا التعليق
شارك

اخ @hassona229 

اعتذر  الان فهمت

ارسل صورة فيه النتائج

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

كل الاحترام و التقدير 

5.png

رابط هذا التعليق
شارك

8 دقائق مضت, محمد عدنان said:

بالنسبة للكود  الي في الاعلى

ضعه في اليوزر فورم المسماه

Userform1

التى في الملف الموجود في المشاركه الاولي لك

كما في الصورة

2.1.png.3af2a1c86b48317b692d3b004efabf8d.png

رابط هذا التعليق
شارك

السلام عليكم 

الاخ @hassona229 جزاك الله كل خير

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

هل بالامكان عرض اليست بوكس من اليمين  الى اليسار  مع توسيع عرض الاعمدة

و شكرا لك 

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

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

وجزاكم مثله اخي على دعاؤك الطيب

2 ساعات مضت, محمد عدنان said:

هل بالامكان عرض اليست بوكس من اليمين  الى اليسار 

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

image.png.27343e935474e472c9e96af6bf75d5a2.png

 

2 ساعات مضت, محمد عدنان said:

توسيع عرض الاعمدة

من هذا السطر في الكود

ListBox1.ColumnWidths = "80 pt;80 pt;80 pt"

عدل الارقام كما تشاء

image.png

رابط هذا التعليق
شارك

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