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

Barna

الخبراء
  • Posts

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

  • تاريخ اخر زياره

  • Days Won

    24

Community Answers

  1. Barna's post in التعديل على ملف استخراج الراتب بعد اضافة عدد من العلاوات was marked as the answer   
    Dim db As DAO.Database Dim rs As DAO.Recordset Dim fld As DAO.Field Dim searchNumber As Long Dim found As Boolean searchNumber = Me.C Set db = CurrentDb() Set rs = db.OpenRecordset("SELECT Salary.GradeNO, Salary.[1], Salary.[2], Salary.[3], Salary.[4], Salary.[5] FROM Salary ORDER BY Salary.GradeNO DESC;", dbOpenDynaset) i = 0 found = False Do Until rs.EOF For Each fld In rs.Fields If Not IsNull(fld.Value) And fld.Value = searchNumber Then found = True ElseIf found And Not IsNull(fld.Value) And i < Me.D And fld.Name <> "GradeNO" Then i = i + 1 Me.G = fld.Value Me.E = rs!GradeNO Me.F = fld.Name End If Next fld rs.MoveNext Loop rs.Close Set rs = Nothing Set db = Nothing  
  2. Barna's post in التعديل على ملف توزيع الخدمة الوظيفية بالسنوات was marked as the answer   
    طيب جرب على حالات اخرى ....
    Dim db As DAO.Database Dim rs As DAO.Recordset Dim i, TT As Integer Dim numCopies As Integer Set db = CurrentDb Set rs = db.OpenRecordset("SELECT tp2.GradeNO, tp2.سنوات_المكوث FROM tp2 WHERE (((tp2.GradeNO)<=" & Me.الدرجة_الوظيفية & ")) ORDER BY tp2.GradeNO DESC;", dbOpenDynaset) TT = iYear Do Until rs.EOF TT = TT - rs!سنوات_المكوث numCopies = rs!سنوات_المكوث If TT < rs!سنوات_المكوث Then Me.مربع_تحرير_وسرد47 = rs!GradeNO - 1 Me.مربع_تحرير_وسرد49 = Me.المرحلة_الوظيفية + TT rs.MoveNext GoTo RR 'Exit Sub End If For i = 1 To numCopies Next i rs.MoveNext Loop RR: If Me.مربع_تحرير_وسرد49 > rs!سنوات_المكوث Then Me.مربع_تحرير_وسرد47 = rs!GradeNO - 1 Me.مربع_تحرير_وسرد49 = 1 Exit Sub End If rs.Close Set rs = Nothing Set db = Nothing  
  3. Barna's post in التعديل على احتساب الشهر 30 يوما was marked as the answer   
    تفضل استاذ @Ahmed_J >>> ربما يلبي طلبك .....
     

    301.Dates_Calculations2.mdb
  4. Barna's post in تمييز نوع الغياب في تقرير الغياب الشهري اذا الغياب محسوب عن ايام تاخير was marked as the answer   
    تفضل جرب ................
     
    التقرير الشهري للغياب.accdb
  5. Barna's post in احتساب ايام التأخير كيوم غياب للموظفين was marked as the answer   
    بارك الله فيك .....
    انظر الصورة لهذا الموظف قبل التحديث وبعد التحديث ( هل هذا هو المطلوب ) ؟؟؟؟؟؟
    جرب المرفق واعلمنا بالنتيجة .....


    الغياب والتاخير.accdb
  6. Barna's post in تحديد الاسكانر المستخدم من اكثر من سكانر متصل was marked as the answer   
    للاسف ليس لدي سكنر ... جرب واعلمنا ..........
    Public Function SelectScanner() Dim ComDialog As New WIA.CommonDialog Dim wiaScanner As WIA.Device ' عرض نافذة لاختيار الجهاز Set wiaScanner = ComDialog.ShowSelectDevice(WiaDeviceType.ScannerDeviceType, False, True) ' إذا تم اختيار جهاز، فإن DeviceID سيحتوي على معرف الجهاز المحدد If Not wiaScanner Is Nothing Then MsgBox "تم اختيار الجهاز: " & wiaScanner.DeviceID Else MsgBox "لم يتم اختيار أي جهاز." End If End Function يتطلب إضافة مرجع إلى “Microsoft Windows Image Acquisition Library v2.0
  7. Barna's post in كيفية استخراج الأعوام بين تاريخين was marked as the answer   
    Sub InsertYears() Dim rsSource As DAO.Recordset Dim rsTarget As DAO.Recordset Dim StartDate As Date Dim EndDate As Date Dim iYear As Integer DoCmd.SetWarnings False DoCmd.RunSQL "DELETE TEMP_DATE.* FROM TEMP_DATE;" DoCmd.SetWarnings True Set rsSource = CurrentDb.OpenRecordset("date1") Set rsTarget = CurrentDb.OpenRecordset("TEMP_DATE") Do Until rsSource.EOF StartDate = rsSource!t2 EndDate = rsSource!t3 For iYear = Year(StartDate) To Year(EndDate) rsTarget.AddNew rsTarget!t2 = CStr(iYear) rsTarget!t1 = rsSource!t1 rsTarget.Update Next iYear rsSource.MoveNext Loop rsSource.Close rsTarget.Close Set rsSource = Nothing Set rsTarget = Nothing End Sub  
  8. Barna's post in تعديل على استعلام موحد was marked as the answer   
    هل هذا طلبك حسب فهمي للموضوع ....
     

    2023.mdb
  9. Barna's post in مساعدة النماذج بعضها يذهب خلف بعض was marked as the answer   
    مشاركة مع استاذي الغالي @Eng.Qassim
    تفضل ......
     
    المهن التربوية.accdb
  10. Barna's post in اين اجد خصائص حذف الكائنات في ادوات اكسس ؟ was marked as the answer   
    وعليكم السلام اخي الفاضل
    لم افهم جيدا لسؤالك ولكن هل تقصد هذا الخيار ؟؟؟؟ ملف .... ثم تابع الصور ...
     
     


  11. Barna's post in إظهار واخفاء بيانات فى التقرير was marked as the answer   
  12. Barna's post in هل من الممكن عمل تقرير اكسس بالمؤشرات المتواجده بتقرير الاكسل المرفق was marked as the answer   
    امين واياك ....... طيب تفضل شوف كده
    استخدمنا هذه الاكواد ...
    Public Function PctMeter(varAmt As Variant, varTotal As Variant) Dim sngPct As Single sngPct = varAmt / varTotal If sngPct <= 1 Then Me!baselbl.Caption = Int(sngPct * 100) Me!lblmeter.Width = CLng(Me!baselbl.Width * sngPct) Else Me!baselbl.Caption = " القيمة أكبر من 100%" Me!lblmeter.Width = CLng(Me!baselbl.Width * 1) End If Select Case sngPct Case Is < 0.15 Me!lblmeter.BackColor = 255 Me.red_p.Visible = True Me.gre_p.Visible = False Me.yel_p.Visible = False Case Is < 0.5 Me!lblmeter.BackColor = 65535 Me.red_p.Visible = False Me.gre_p.Visible = False Me.yel_p.Visible = True Case Else Me!lblmeter.BackColor = 65280 Me.red_p.Visible = False Me.gre_p.Visible = True Me.yel_p.Visible = False End Select End Function Private Sub Detail_Format(Cancel As Integer, FormatCount As Integer) i = 1 For i = i To 5 If (Me("Text" & 19 + i) / Me.Text25) * 100 < 20 Then Me(i & "_red").Visible = True Me(i & "_ger").Visible = False Me(i & "_yel").Visible = False ElseIf (Me("Text" & 19 + i) / Me.Text25) * 100 > 20 Then Me(i & "_red").Visible = False Me(i & "_ger").Visible = True Me(i & "_yel").Visible = False End If Next i Call PctMeter(Me.bar, 100) End Sub  
     
    New Database - .accdb
  13. Barna's post in تعديل الكود ترقيم مجموع من سجلات was marked as the answer   
    طيب جرب هذا <|<><><><><><|>
    Dim rst As DAO.Recordset Set dbs = CurrentDb date_custom = Date If Len(Me.number_custom & "") <> 0 Then Exit Sub Me.number_custom = Nz(DMax("[number_custom]", "tbl_custom", "year([date_custom])=" & Year(date_custom)), 0) + 1 Set rst = dbs.OpenRecordset("FrmRretsQ") d = Me.number_custom DoCmd.RunCommand acCmdSaveRecord Do Until rst.EOF rst.Edit rst!number_custom = d rst!date_custom = Date rst!emp_company = DYear rst.Update d = d + 1 rst.MoveNext Loop Me.Requery  
  14. Barna's post in استعلام جمع بيانات was marked as the answer   
    اعتقد عندك مشكلة في العلاقات .... حاول ترتجعها .... على العموم هل هذا ما تريد .....
     
    solaf2.accdb
  15. Barna's post in التنقل بين سجلات النماذج الفرعية was marked as the answer   
    مشاركة مع الاستاذ @دروب مبرمج
    في حدث الحالي للنموذج الفرعي الاول ضع هذا الحدث ......
    Dim rs As DAO.Recordset On Error Resume Next Set rs = Me.RecordsetClone rs.FindFirst "[ItemNumber] = " & Me![ItemNumber] Me.Parent.FrmSubInvoice.Form.Bookmark = rs.Bookmark  
  16. Barna's post in تغير اسم الحقل حسب قيمة الخلية was marked as the answer   
    اخي محمد جرب الكود التالي في حدث تحت الزر ....
    Dim a As Integer a = Forms![test1]![NumberEnd] Me("LastNumberx" & a) = Forms![test1]![NumberEnd]  
  17. Barna's post in معرفة أخر رقم فى أخر سجل لنموذج فرعى was marked as the answer   
    لعل هذا ما تريد .... ضع هذا الحدث تحث زر GO واخبرنا ..... لأني لم افهم طريقتك في العمل ....
    Dim rs As Object Set rs = Forms![test1]![SUBX].Form.RecordsetClone rs.MoveLast Forms![test1]![SUBX].Form.Bookmark = rs.Bookmark Forms![test1]![LastNumberx] = Forms![test1]![SUBX].[Form]![NumberX] rs.Close DoCmd.Close  
  18. Barna's post in عدم تكرار قيمة حقل في نمودج بناء على شرط معين was marked as the answer   
    في النموذج وفي حدث بعد التحديث لمربع النص الخاص بالرقم ضع هذا الكود
    If [Forms]![نمودج1]![الرقم] <= [Forms]![نمودج1]![نص12] Then Me.الرقم = "" MsgBox "الرقم مكرر" End If  
  19. Barna's post in ماذا بعد معرفة رقم uuid was marked as the answer   
    اخي الكريم ابحث في المنتدى تجد العديد من هذه الافكار مثل هذه
     
  20. Barna's post in كيف اخفي تلك الجداول was marked as the answer   
    طبع ما في الصورة ...............
     
     
     
     
     


  21. Barna's post in كيف اطبع ملف اكسل بوساطة زر امر في نموذج اكسس was marked as the answer   
    جرب هذا .................
    Dim ExcelObj As Excel.Application Set ExcelObj = CreateObject("Excel.Application") ExcelObj.Workbooks.Open "C:\file1.xlsx" ExcelObj.Sheets.PrintOut ExcelObj.Quit Set ExcelObj = Nothing  
  22. Barna's post in ترتيب الطلاب رقميا بدون قفز المرتبة التالية عند وجود مكرر was marked as the answer   
    تفضل <><><><><><<>
     
    Students (3).accdb
  23. Barna's post in اذا كان عدد سجلات الجدول اكثر من اربع سجلات يتم الاحتفاظ باخر اربع سجلات وحذف السجلات الستة الاولى was marked as the answer   
    استخدم هذا ..................
    Dim i As Integer Dim db As DAO.Database Dim rst As DAO.Recordset Set db = CurrentDb Set rst = db.OpenRecordset("t1") While rst.RecordCount >= 10 rst.MoveFirst For i = 1 To 6 rst.Delete rst.MoveNext Next Wend rst.Close MsgBox "تم حذف كل السجلات اللازمة", vbOKOnly, "تنبيه"  
  24. Barna's post in جقل تجميع في استعلام was marked as the answer   
    نعم ولكن راجع الملف الاخير معدل ... انا اقصد الملف الاخير تم تعدي استعلامك القديم بما يتناسب سؤالك الاخير
  25. Barna's post in مساعدة في تجميع استعلام بين جدولين was marked as the answer   
    حذف كل المرتجعات والنتيجة ممتازة .............. انظر .....
     


×
×
  • اضف...

Important Information