Barna
-
Posts
960 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
24
Community Answers
-
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
-
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
-
Barna's post in التعديل على احتساب الشهر 30 يوما was marked as the answer
تفضل استاذ @Ahmed_J >>> ربما يلبي طلبك .....
301.Dates_Calculations2.mdb
-
Barna's post in تمييز نوع الغياب في تقرير الغياب الشهري اذا الغياب محسوب عن ايام تاخير was marked as the answer
تفضل جرب ................
التقرير الشهري للغياب.accdb
-
Barna's post in احتساب ايام التأخير كيوم غياب للموظفين was marked as the answer
بارك الله فيك .....
انظر الصورة لهذا الموظف قبل التحديث وبعد التحديث ( هل هذا هو المطلوب ) ؟؟؟؟؟؟
جرب المرفق واعلمنا بالنتيجة .....
الغياب والتاخير.accdb
-
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
-
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
-
Barna's post in تعديل على استعلام موحد was marked as the answer
هل هذا طلبك حسب فهمي للموضوع ....
2023.mdb
-
Barna's post in مساعدة النماذج بعضها يذهب خلف بعض was marked as the answer
مشاركة مع استاذي الغالي @Eng.Qassim
تفضل ......
المهن التربوية.accdb
-
Barna's post in اين اجد خصائص حذف الكائنات في ادوات اكسس ؟ was marked as the answer
وعليكم السلام اخي الفاضل
لم افهم جيدا لسؤالك ولكن هل تقصد هذا الخيار ؟؟؟؟ ملف .... ثم تابع الصور ...
-
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
-
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
-
Barna's post in استعلام جمع بيانات was marked as the answer
اعتقد عندك مشكلة في العلاقات .... حاول ترتجعها .... على العموم هل هذا ما تريد .....
solaf2.accdb
-
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
-
Barna's post in تغير اسم الحقل حسب قيمة الخلية was marked as the answer
اخي محمد جرب الكود التالي في حدث تحت الزر ....
Dim a As Integer a = Forms![test1]![NumberEnd] Me("LastNumberx" & a) = Forms![test1]![NumberEnd]
-
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
-
Barna's post in عدم تكرار قيمة حقل في نمودج بناء على شرط معين was marked as the answer
في النموذج وفي حدث بعد التحديث لمربع النص الخاص بالرقم ضع هذا الكود
If [Forms]![نمودج1]![الرقم] <= [Forms]![نمودج1]![نص12] Then Me.الرقم = "" MsgBox "الرقم مكرر" End If
-
Barna's post in ماذا بعد معرفة رقم uuid was marked as the answer
اخي الكريم ابحث في المنتدى تجد العديد من هذه الافكار مثل هذه
-
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
-
Barna's post in ترتيب الطلاب رقميا بدون قفز المرتبة التالية عند وجود مكرر was marked as the answer
تفضل <><><><><><<>
Students (3).accdb
-
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, "تنبيه"
-
Barna's post in جقل تجميع في استعلام was marked as the answer
نعم ولكن راجع الملف الاخير معدل ... انا اقصد الملف الاخير تم تعدي استعلامك القديم بما يتناسب سؤالك الاخير
-
Barna's post in مساعدة في تجميع استعلام بين جدولين was marked as the answer
حذف كل المرتجعات والنتيجة ممتازة .............. انظر .....