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

نجوم المشاركات

  1. طارق محمود

    طارق محمود

    أوفيسنا


    • نقاط

      8

    • Posts

      4,519


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      8

    • Posts

      9,752


  3. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      6

    • Posts

      8,723


  4. بن علية حاجي

    بن علية حاجي

    الخبراء


    • نقاط

      2

    • Posts

      4,331


Popular Content

Showing content with the highest reputation on 29 نوف, 2020 in all areas

  1. السلام عليكم أخي الكريم طلبك الأول تم بالتنسيق الشرطي Conditional Format والطلب الثاني تم بالكود الذي بالملف تفضل البحث عن التكرار في Irsalieh.xlsm
    3 points
  2. ثانيا الكود كما تلاحظ فهو كود خاص وفي حدث التغيير أي أنه سيتم تفعيله مباشرة إذا تحقق الشرط Private Sub Worksheet_Change(ByVal Target As Range) If Intersect(ActiveCell, [A1:A9999]) Is Nothing Then Exit Sub r = Target.Row Range(Cells(r - 1, 4), Cells(r + 1, 4)).UnMerge If Cells(r, 1).Value = Cells(r - 1, 1).Value Then Range(Cells(r, 4), Cells(r - 1, 4)).Merge If Cells(r, 1).Value = Cells(r + 1, 1).Value Then Range(Cells(r, 4), Cells(r + 1, 4)).Merge End Sub في الصورة المرفقة شرح سريع له
    2 points
  3. وعليكم السلام ورحمة الله 1-التنسيق الشرطي أولا تعلم المساحة المعنية كما بالصورة A2:C4992 ثانيا تذهب لقائمة التنسيق الشرطي كما بالصورة ثم تضع التنسيق أن يتم تلوين الخلايا الثلاثة A,B,C في الصف الذي ينطبق عليه الشرط ================ الشرط هو: أن تتساوي خلية A مع مايعلوها مباشرة أو مادونها مباشرة عن طريق إختيار قاعدة تنسيق مشروط جديدة كما بالصورة والقاعدة كما يلي =OR($A2=$A3,$A2=$A1)
    2 points
  4. السلام عليكم ورحمة الله بمعية جدول مساعد واستعمال الدالة CONCATENATE تم عمل المطلوب في الملف المرفق... باستعمال الأكواد يمكن أن يكون العمل أفضل... بن علية حاجي HR.xlsx
    2 points
  5. اوامر نموذج عرض ورقة البيانات تختلف قليلا عن النماذج العادية ، فلا يوجد عرض للكائن ، ولكن يوجد عرض للعمود/الحقل : تنقر باليمين على العمود/الحقل ، ثم تختار Field Width ، فنرى ان امر العرض ليس width ، وانما ColumnWidth . بينما الارتفاع RowHeight ، لا علاقة له بالعمود/الحقل وانما بالنموذج الفرعي شخصيا : . وعلى هذا الاساس ، النموذج التالي : . يصبح . عندما يكون الامر : Private Sub أمر2_Click() 'ذا كان النظام عندك: ' 'بالسنتيمتر ، فيجب ان تضرب الرقم * 576 ' 'بالبوصة ، فيجب ان تضرب الرقم * 1440 ''من فوق Me.frm_2.Top = 0 * 1440 ' ''من اليسار Me.frm_2.Left = 0.199 * 1440 '1.7 ''العرض Me.frm_2.Width = 6.185 * 1440 ' ''الارتفاع Me![frm_2].Height = 1.7 * 1440 'Me.Refresh Me![frm_2]![nNumbers].ColumnWidth = 2.5 * 1440 Me![frm_2].Form.RowHeight = 0.75 * 1440 'Call أمر1_Click 'Me.Refresh End Sub جعفر
    2 points
  6. يالنسية للكود الثّاني صفحة Sheet1 العامودين K & L Sub Multi_J_K() Dim LR%, t% With Sheets("Sheet1") LR = .Range("j" & Rows.Count).End(xlUp).Row For t = 1 To LR .Cells(t, "j") = _ IIf(Application.CountA(.Cells(t, "J") _ .Resize(, 3)) = 1, vbNullString, .Cells(t, "j")) Next m = .Range("j1", Range("j1").End(4)).Rows.Count t = 1 Do Until t > LR Cells(t + m + 1, "J") = _ Application.Sum(Cells(t, "J").Resize(m, 3)) t = t + m + 3 Loop End With End Sub
    1 point
  7. وعليكم السلام كريمو 🙂 الظاهر ان الاستعلام مصدر بيانات احد التقارير فيه معيار يشير الى النموذج FrmCcpReport وفيه الحقل txtYear . جعفر
    1 point
  8. فيك الخير والبركة سيدنا الفاضل 🙂 واخواننا الصعايده على راسنا 🙂 جعفر
    1 point
  9. حياك الله استاذ جعفر اكيد استاذ وان شاء الله نراها منكم عن قريب وما يخص المشاركة فهي محاولة متواضعة لكيفية فهم صفحة الاكواد التي تم الاشارة لها
    1 point
  10. شكرا لك اخي حسام 🙂 في الواقع هذه الاكواد يحتاج لها موضوع مستقل ، بمرفق ، وفيه مثال لكل سطر من الاكواد 🙂 وهي موجودة في قائمة الاشياء اللي "يمكن" يوم من الايام ان اقوم بها ، مو فقط للجزئية التي تفضلت بها فقط ، وانما للورقة كاملة 🙂 جعفر
    1 point
  11. مشاركة مع اساتذتي الاجلاء
    1 point
  12. العمود R فيه عدة احتمالات وبناء عليها تم بناء المعادلات بعد تحليل لها مرفق الملف برنامج فحص.xlsm
    1 point
  13. ما شاء الله، سلمت يمينك أخانا الحبيب👍
    1 point
  14. حسب المرفق جرب هذا الكود ... وضعه فى مديول جديد Sub Distribute() Dim ws As Worksheet, wb As Workbook Dim a, e, i As Long, ii As Long, w, x With CreateObject("Scripting.Dictionary") .CompareMode = 1 Set ws = Sheet1 Application.Calculation = xlManual a = Intersect(ws.Rows("4:" & Rows.Count), _ ws.Range("b4").CurrentRegion).Columns("b:as").Value ReDim w(1 To UBound(a, 2)) For i = 1 To UBound(a, 1) If a(i, 1) = "" Then Exit For If Not .exists(a(i, 1)) Then Set .Item(a(i, 1)) = CreateObject("Scripting.Dictionary") End If If Not .Item(a(i, 1)).exists(a(i, 1)) Then ReDim x(1 To 2) Set x(1) = CreateObject("System.Collections.ArrayList") Set x(2) = Intersect(ws.Rows("5:" & Rows.Count), _ ws.Range("a4").CurrentRegion).Columns("a:as") .Item(a(i, 1))(a(i, 1)) = x End If For ii = 2 To UBound(a, 2) w(ii) = a(i, ii) Next .Item(a(i, 1))(a(i, 1))(1).Add w Next For Each e In .keys For i = 0 To .Item(e).Count - 1 w = Application.Index(.Item(e).items()(i)(1).ToArray, 0, 0) With Sheets(e) .Cells(4, 1).Resize(UBound(w, 1), UBound(w, 2)) = w .Cells(4, 1).FormulaR1C1 = "1" .Cells(4, 1).Resize(UBound(w)).DataSeries Rowcol:=xlColumns, Type:=xlLinear, Step:=1 End With Next Next End With Application.Calculation = xlCalculationAutomatic End Sub 245472506_.xlsm
    1 point
  15. وعليكم السلام 🙂 هذا الكلام كله لا علاقة له بنسخة الاكسس التي قمت بتنصيبها على جهازك ، وانما له علاقة بصيغة قاعدة بياناتك ، accdb او mdb . نسخ الاكسس سابقا (الى النسخة 2003) كانت تستخدم نظام JET ، كانت تستخدم DAO بإصداراته ، برنامج منفصل عن النظام ، ولكن الاكسس من النسخة 2007 فأعلى ، يستخدم نظام ACE ، وقد دمج DAO في نظامه ، فبدلا عن اختيار DAO ، اختار Microsoft Office xx.x Access database engine Object Library كما هو موضح في الصورة (xx.x يعتمد على نسختك ، انا نسختي 2010 اي 14.0) ، اذا كانت قاعدة بياناتك بصيغة accdb : . بينما اذا كانت قاعدة بياناتك بصيغة mdb ، فـ DAO لا يزال موجود : . جعفر
    1 point
  16. السلام عليكم ورحمة الله وبركاته في البداية حول رقم البوليصه الى رقم لانها ظاهرة انها نص .. تعمل تحديد الكل .. سوف يظهر بجانب الخلايا .. مربع ملاحظات .. اختار تحويل الى رقم .. وسوف تعمل معاك .. ايضا عن طريق .. file option advanced edtion option نختار automatically
    1 point
  17. الملف اشتغل كويس وهذه اول مساعدة لى مع هذا المنتدى vlookup.xlsx
    1 point
  18. وعليكم السلام ورحمة الله وبركاته تم تنفيذ هذا الاقتراح أخي الحبيب أبو عاصم المصري، وأسأل الله تعالى أن يبارك بجهودكم الطيبة 🙂 [الجديد في التحديث 4.40]: في العمليات التي تحتاج وقتاً طويلاً، تم إضافة زر لإيقاف العملية، حيث يمكنك إيقاف العملية متى ما أردت، وسيظهر ذلك ضمن النافذة؛ مثل: استبدال آيات المستند، الفهرسة الآلية، الأنماط المستخدمة ضمن المستند الحالي، الخطوط المستخدمة ضمن المستند الحالي.
    1 point
  19. تم معالجة الأمر 1- الـشيت Salim هي مثال لما يفوم به الماكرو Do it ( الـشيت Salim هي نسخة طبق الأصل عن الشيت 1999 ) للتجربة فقط تم ادراج هذه الصفحة حفاظاً على البيانات الاساسية لأنه في حال كان المطلوب غير ذلك لا تتأثر البيانات الاساسية في الشيت 1999 (لا يمكن التراجع عما يفعله اي ماكرو بواسطة الأمر Undo ) الكود Option Explicit Dim ro As Long Dim i As Long Sub Do_it() Remove_Minus Remove_Similar End Sub '++++++++++++++++++++++ Sub Remove_Minus() With Sheets("salim") ro = .Cells(Rows.Count, "M").End(3).Row For i = 2 To ro If IsNumeric(Cells(i, "M")) Then Cells(i, "M") = Abs(Cells(i, "M")) End If Next End With End Sub '++++++++++++++++++++++++ Sub Remove_Similar() Sheets("salim").Range("A1").CurrentRegion.RemoveDuplicates _ Columns:=Array(4, 5, 11, 13), Header:=1 End Sub الملف مرفق Remove_Dup.xlsm
    1 point
  20. الكود بشكل محتصر أكثر Private Sub Worksheet_SelectionChange(ByVal Target As Range) Application.DisplayFormulaBar = _ Intersect(Target, Range("b2:b10")) Is Nothing End Sub
    1 point
  21. السلام عليكم ورحمة الله تعالى وبركاته استاذى الجليل ومعلمى القدير و والدى الحبيب الاستاذ @jjafferr للعلم منذ فترة تعرضت فى احد الامثلة لــ موضوع parent وأعتقد كان مثال للاستاذة الفاضلة زهرة ولا اخفيكم سرا لم افهم شئ وهممت بالبحث على الانترنت وتوصلت للموقع ذلك الذى اشرتم اليه ولم افهم شئ كذلك الى الان هههههه ..... معلش صعيدي وافهم بصعوبة بالغة
    1 point
  22. بعد اذن الاخ ابراهيم هذا الكود Option Explicit Sub Multi_Sum() Dim LR%, t%, m% With Sheets("Sheet1") LR = .Range("A" & Rows.Count).End(xlUp).Row For t = 1 To LR If Application.CountA(.Cells(t, 1).Resize(, 2)) = 1 Then .Cells(t, 1) = vbNullString End If Next m = .Range("A1", Range("A1").End(4)).Rows.Count t = 1 Do Until t > LR With .Range("A" & t + m) .Formula = _ "=SUM(A" & t & ":B" & t + m - 1 & ")" .Value = .Value End With t = t + m + 2 Loop End With End Sub الملف مرفق ahmed sherif.xlsm
    1 point
  23. السلام عليكم ورحمة الله استخدم هذا الكود Sub Suming() Dim LR As Long, i As Long, j As Integer, p As Integer Dim ws As Worksheet Set ws = Sheets("Sheet1") LR = ws.Range("A" & Rows.Count).End(xlUp).Row + 1 MsgBox LR i = 6 j = i - 5 p = i - 1 Do While i <= LR ws.Range("A" & i).Value = WorksheetFunction.Sum(ws.Range("A" & j & ":B" & p)) i = i + 7 Loop End Sub
    1 point
  24. بعد اذن اخي المهندس هذا الملف بتنسيقات مختلفة وبدون التعداد الزائد (1 /2 / 3 الخ....) Canionettes.xls
    1 point
  25. بارك الله فيك استاذ سليم وبعد اذن حضرتك ولإثراء الموضوع -يمكن أيضاً استخدام هذه المعادلة بداية من الخلية N3 سحباً يساراً وأسفل =COUNTIFS($H$3:$H$500,"<="&$M3,$H$3:$H$500,">="&$L3,$I$3:$I$500,N$2) Countifs,معادلة احصاء عدد الذكور والإناث بين تاريخين.xlsx
    1 point
  26. في الخلية (N3) هذه المعادلة واسجب عامودين و 7 أعمدة =SUMPRODUCT(--($H$3:$H$53<>""),--($H$3:$H$53<=$M3),--($H$3:$H$53>=$L3),--($I$3:$I$53=N$2)) الملف مرفق Mustafa.xlsx
    1 point
  27. هاي يسمونها الخبرة 🙂 جعفر
    1 point
  28. الاستاذ @jjafferr yes "Because I spent hours trying to solve the problem and then you come and tell me that the solution is in the word "parent
    1 point
  29. الاخت الكريمه manola_mr شكرا لمرورك الكريم بالنسبه لموضوع شاشة اكواد البيانات والجرد . لن يتم استخدامه و للتوضيح اكثر برجاء مراجعة هذه الفقره من المشاركة الاولي اما بالنسبه لفورم السياره ده كان طلب خاص لاحد العملاء التي تعمل في هذا المجال. ولقد ارفقته فى نسخة الاكواد مفتوحة المصدر . ربما يستفيد به احد الاعضاء راغبي التعلم.
    1 point
  30. السلام عليكم أخي الكريم تفضل المرفق فاتورة جديدة2.rar
    1 point
  31. بسم الله الرحمن الرحيم أخي فرضا أن أسم النموذج Form1 مثلا والحقل الأسم في النموذج وليكن أسمه هو Txt1 ومصدره هو الحقل Name الموجود في الجدول المسمى main وحقل رقم العضو هو Txt0 ومصدره نفس الجدول main وأسم الحقل في الجدول Num نقوم بوضع الكود التالي في حدث قبل التحديث للحقل الأسم في النموذج Form1 Private Sub Txt1_BeforeUpdate(Cancel As Integer) Dim db As Database Dim rst As Recordset Dim CountNum, I As Long Dim MsgNumbr, NewName As String Set db = CurrentDb NewName = [Forms]![Form1]![Txt1] Set rst = db.OpenRecordset("main", dbOpenSnapshot) CountNum = DCount("*", "main", "[Name]=[Forms]![Form1]![Txt1]") If CountNum = 0 Then Exit Sub With rst Do Until .EOF If rst!Name = NewName Then MsgNumbr = MsgNumbr & rst!Num & " " End If .MoveNext Loop End With If MsgBox("سيق أدخال هذا الأسم برقم" & MsgNumbr & vbCrLf & vbCrLf _ & "هل ترغب بتسجيله" & vbCrLf, _ vbInformation + vbYesNo + vbDefaultButton2, _ "تنبيه") = vbNo Then Cancel = -1 End If db.Close End Sub ومرفق لك مثال توضيحي وتقبل تحياتي أخيك سهل أحمد ( ابو نعيم ) checkifExists.rar
    1 point
×
×
  • اضف...

Important Information