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

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

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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      13

    • Posts

      8,723


  2. ابراهيم الحداد

    • نقاط

      4

    • Posts

      1,252


  3. محمد أبوعبدالله

    • نقاط

      4

    • Posts

      1,998


  4. قصي

    قصي

    05 عضو ذهبي


    • نقاط

      3

    • Posts

      1,337


Popular Content

Showing content with the highest reputation on 03 أكت, 2020 in all areas

  1. السلام عليكم ورحمة الله استخدم هذا الكود Sub Right_To_Left() Dim ws As Worksheet For Each ws In Worksheets ws.DisplayRightToLeft = True Next End Sub
    4 points
  2. فى ناس كتير بتكون فى أشغال فيها عد فلوس كتير مع العملاء أو المناديب - ومش بيكون عندهم ماكينة عد فلوس - او بيتعاملوا مع فلوس قديمة - الملف ده اكيد هايسهل عليهم عملية تجميع وتفقيط الفلوس بالعربي والانجليزي - بمجرد عد كل فئة وكتابة عددها باسوورد الملف 123 لأي صديق يريد تطوير الملف ليناسب أى عملات لأي دولة أخرى 0001 حاسبة النقود المصرية.xlsm
    3 points
  3. تم التعديل على الملف ليعمل كما تريد Option Explicit Dim S As Worksheet Dim P As Worksheet Dim i%, k%, New_arr() Dim Rop%, Ros%, myEnd% Dim my_rg As Range, rgs As Range, RgP As Range Sub Salim_rand_table() If ActiveSheet.Name <> "Salim" Then GoTo End_Me Application.ScreenUpdating = False Set S = Sheets("Salim") Set P = Sheets("Page1_1") Set rgs = S.Range("B1").CurrentRegion Ros = rgs.Rows.Count If Ros > 1 Then rgs.Offset(1).Resize(Ros - 1).ClearContents End If myEnd = Application.CountA(P.Range("B:B")) - 1 Set my_rg = P.Cells(2, 2).Resize(myEnd) With CreateObject("System.Collections.SortedList") For i = 1 To myEnd .Item(Rnd) = i Next i ReDim New_arr(1 To .Count) For k = 1 To .Count New_arr(k) = Val(my_rg.Cells(.GetByIndex(k - 1))) Next End With With S.Range("B2").Resize(UBound(New_arr)) .Value = Application.Transpose(New_arr) .Value = .Value End With Please_Collction End_Me: Application.ScreenUpdating = True End Sub '+++++++++++++++++++++++++++ Sub Please_Collction() Application.ScreenUpdating = False Dim x, y Set S = Sheets("Salim") Set rgs = S.Range("B1").CurrentRegion Ros = rgs.Rows.Count If Val(S.Range("L1")) <= 0 Then S.Range("L1") = 10 End If S.Range("C2").Resize(Ros).UnMerge S.Range("C2").Resize(Ros).Clear k = 1 For i = 2 To Ros Step Int(S.Range("L1")) Cells(i, 3) = "Equipe :" & k Cells(i, 3).Resize(Int(S.Range("L1"))).Merge k = k + 1 Next With S.Range("C2").Resize(Ros) .VerticalAlignment = 2 .HorizontalAlignment = 3 .Borders.LineStyle = 1 .Font.Size = 16 .Font.Bold = True End With Application.ScreenUpdating = True End Sub '++++++++++++++++++++++++++++++ الملف من جديد faicale_table_1.xlsm
    2 points
  4. قم بتفيير اسم الصقحة الى Salim لحسن نسخ الكود ولصقه بدون مشاكل اللغة العربية ونقذ هذا الكود Option Explicit Sub Del_Empty() Dim my_rg As Range Dim Ro% With Sheets("Salim") Ro = .Cells(Rows.Count, 2).End(3).Row .Range("A5").Resize(Ro - 4).ClearContents On Error Resume Next Set my_rg = _ .Range("B5:B" & Ro).SpecialCells(xlCellTypeBlanks) my_rg.Delete xlUp On Error GoTo 0 Ro = .Cells(Rows.Count, 2).End(3).Row .Range("A5").Resize(Ro - 4) = _ Evaluate("Row(1:" & Ro - 4 & ")") End With End Sub الملف مرفق jack305.xlsm
    2 points
  5. اخي الكريم تمت الاجابة عن سؤالك في موضوع سابق فهل توجد مشكلة في الكود Dim fs, cf, strFolder strFolder = CurrentProject.Path & "\" & Me.ID.Value Set fs = CreateObject("Scripting.FileSystemObject") If fs.FolderExists(strFolder) = False Then Set cf = fs.CreateFolder(strFolder) If fs.FolderExists(strFolder) = True Then Else MsgBox "تحذير لم يتم انشاء مجلد المرفقات ", vbExclamation End If End If تحياتي
    2 points
  6. بعد اذن اخي محي الدين كان من المفروض رفع ملف لكن لأول مرة اليك هذا النموذج الكود Option Explicit Rem This Macro Insert chossen Number Of rows Every n Number Sub salim_rows() Dim t%, lr%, x%, z%, a% Dim my_rg As Range Application.ScreenUpdating = False If ActiveSheet.Name <> "Salim" Then GoTo End_Me If Val(Range("E2")) <= 0 _ Or Val(Range("F2")) <= 0 Then GoTo End_Me End If z = Int(Range("E2")) 'number of rows to be insert every time a = Int(Range("F2")) 'number of rows for every group Range("G2") = 4 x = 4 If a <= 0 Then Exit Sub t = x + a + 1 If z > 5 Then z = 5 lr = Cells(Rows.Count, 1).End(3).Row On Error Resume Next Set my_rg = Range("a" & x & ":a" & lr).SpecialCells(4) my_rg.EntireRow.Delete On Error GoTo 0 Do Until Cells(t, "A") = "" Rows(t).Resize(z).Insert t = t + z + a Loop End_Me: Application.ScreenUpdating = True End Sub '+++++++++++++++++++++++++++++++++ Sub del_Empty_rows() Dim ro%, Rg As Range ro = Cells(Rows.Count, 1).End(3).Row If ro < 4 Then Exit Sub Range("G2") = 4 On Error Resume Next Set Rg = Range("A4" & ":A" & ro).SpecialCells(4) Rg.EntireRow.Delete On Error GoTo 0 End Sub صورة توضح كيفية التعامل مع الملف الملف مرفق Insert_N_Rows.xlsm
    2 points
  7. هذا الكود يقوم بادراج جدول عشوائي في الشيت (Salim) للبيانات الموجودة في الشيت (Page1_1) Option Explicit Sub Salim_rand_table() If ActiveSheet.Name <> "Salim" Then Exit Sub Dim S As Worksheet Dim P As Worksheet Dim i%, k%, New_arr() Dim Rop%, Ros%, myEnd% Dim my_rg As Range, Rgs As Range, RgP As Range Set S = Sheets("Salim") Set P = Sheets("Page1_1") Set Rgs = S.Range("B1").CurrentRegion Ros = Rgs.Rows.Count If Ros > 1 Then Rgs.Offset(1).Resize(Ros - 1).ClearContents End If myEnd = Application.CountA(P.Range("B:B")) - 1 Set my_rg = P.Cells(2, 2).Resize(myEnd) With CreateObject("System.Collections.SortedList") For i = 1 To myEnd .Item(Rnd) = i Next i ReDim New_arr(1 To .Count) For k = 1 To .Count New_arr(k) = Val(my_rg.Cells(.GetByIndex(k - 1))) Next End With With S.Range("B2").Resize(UBound(New_arr)) .Value = Application.Transpose(New_arr) .Value = .Value End With End Sub الملف مرفق ( فقط اضغط غلى الزر Tableau aléatoire) في الشيت (Salim) faicale_table.xlsm
    1 point
  8. 1 point
  9. بعد اضافة الاسماء ( قدر ما تريد منها) أو حذف قدر ما تريد اضغط الزر Run على فكرة يوجد قاعدة للتنسيق الشرطي و لكن بدون ان تذكر ماذا تريد ان يظهر لك هذا التنسيق
    1 point
  10. السلام عليكم ورحمة الله تعالى وبركاته اولا: عملية ربط قاعدة بيانات بمسار محدد توضع حيث يتم وضع قاعدة البيانات التي تحتوي غلي الجداول في نفس مجلد قاعدة الواجهة Autolink Path.rar ---------------------------------------- ثانيا :عملية الربط التلقائي بدون تحديد المسار حيث يتم البحث عن قاعدة البيانات المطلوبة لربط الجداول اينما كانت Autolink Table.rar ---------------------------------------- ثالثا :عملية ربط قاعدة الواجهة باكثر من قاعدة link MultiDB.rar مع اطيب وارق الامنيات بالاستمتاع
    1 point
  11. اخت يارا اقترح عليك ان تقومي بهذه الخطوات 1- من المفترض أن تمر عبر الكود باستخدام المفتاح F8 أو (أفضل) لتعيين نقطة توقف على السطر السفلي الثاني (المؤشر في Next c متبوعًا بالضغط على المفتاح F9 ، متبوعًا بالضغط على المفتاح F5) 2- تصوير مراحل تطبيق الكود واعطائي النتيجة النهائية لاخر صورة حتى يتسنى معرفة كيفية المعالجة
    1 point
  12. شكر اااااااااااااااااااااااااااا ياباشا والله انت غاية فى الروعة والابداع تسلم وتعيش كل الشكر والحب وخالص الدعاء من كل قلبى لك اخى وحبيبيى سليم باشا
    1 point
  13. صباح الخير ربما؟ اعبار أن ألداتا تبدأ من الخلية (ِA1) Sub test() Dim i For i = 670 To 1 Step -10 Cells(i - 9, 1).Resize(3).Select Selection.Insert Shift:=xlDown Next End Sub
    1 point
  14. بحب اضافة ما يلي على الأكواد الملف من جديد Jadid_YARA_2User Uniqus..xlsm
    1 point
  15. وعليكم السلام ورحمة الله وبركاته تفضل اخي الكريم تحياتي
    1 point
  16. السلام عليكم مرحبا اخي الكريم انت تحتاج الى ضبط العلاقات وهذا شىء هام جدا جدا جدا قمت بعمل جزء من التعديل وارجو ان تكمل على بنفس الطريقة انت لا تحتاج الى جدول Names Record في نموذج Form-dawarat وان احتجته فلا بد من ضبط العلاقة اولاً جرب المرفق واستكمل التعديلان واعلمني بالنتيجة ولو احتجت شىء بالخدمة اخي الكريم sss.rar تحياتي
    1 point
  17. بارك الله فيك اخي واستاذي ابو عارف، نعم هذا ما قصدته بالضبط. جعله الله في ميزان أعمالك. مشكورين جميع الأساتذة، وفي أمان الله.
    1 point
  18. هناك مسافة زائدة في اسم الصفحة "يناير "يجب ازالتها قم باضافة شيت تحت اي اسم مثلاً "Summation" بدون كود هذه المعادلة =SUM('يناير:مارس'!D4) أو هذا الكود Option Explicit Sub test() Dim First As Worksheet Dim Last As Worksheet Set First = Sheets("يناير") Set Last = Sheets("مارس") With Sheets("Summation").Range("D4") .Formula = "=SUM('" & First.Name & ":" & Last.Name & "'!D4)" .Value = .Value End With End Sub النلف مرفق Hissam.xlsm
    1 point
  19. تفضل يمكنك استخدام هذه المعادلة =SUMPRODUCT(SUMIF(INDIRECT("'"&sheets&"'!"&"b2:b100"),A2,INDIRECT("'"&sheets&"'!"&"d2:d100"))) تجريبى1.xlsx
    1 point
  20. وعليكم السلام 🙂 هذا الرابط يُعتبر المصدر : http://access.mvps.org/access/forms/frm0031.htm وبه ملف وورد يمكن انزاله : http://access.mvps.org/access/downloads/Syntax_for_subs.zip وارفقت المرفق لسهولة الوصول اليه 🙂 جعفر Syntax for subs.doc
    1 point
  21. تفضل هذا التعديل اخي الكريم Data.mdb
    1 point
  22. تفضل هذه المشاركة من قبلي اخي الكريم - يتم الاستعلام بمجرد كتابة جزء من الاسم سواء جزء من البداية او من أي مكان في الاسم - سيتم عرض القائمة بمجرد وجود نتيجة تجربة.accdb
    1 point
  23. اخي الكريم بما انك بدءت فتضل هذه البداية من قبلي استمر و اذا استصعب عليك شي فنحن في الخدمة برنامج المخاز.zip
    1 point
  24. المطلوب عند اضاف اى اسم فى العمود B يتم ترتيب الخلايا فى العمود تلقائيا من الاصغر للاكبر بدون عمل ترتيب جديد او فلتره يدويا المطلوب ايضا امكانية اختيار هذا الترتيب التلقائى حسب العمود B او C مع جزيل الشكر والتقدير ترتيب تلفائى.xlsx
    1 point
  25. جرب هذا الكود يتم الفرز بناء على التاريخ Private Sub Worksheet_Change(ByVal Target As Range) Dim lastrow As Long lastrow = Cells(Rows.Count, 3).End(xlUp).Row Range("A2:c" & lastrow).Sort key1:=Range("c2:c" & lastrow), _ order1:=xlAscending, Header:=xlNo End Sub ترتيب تلفائى1.xlsm
    1 point
  26. بعد اذن احي المهندس جرب هذا الملف (لك حق الاختيار الحد الادنى والاقصى) Alien.xlsx
    1 point
  27. تم التعدبل Option Explicit Sub del_zeros_() Dim sh As Worksheet Dim curt As Range Dim rg_to_del As Range Dim F_rg As Range Dim Ro%, i% For Each sh In Sheets If sh.Name Like "report*" Then GoTo next_sheet Ro = sh.Cells(Rows.Count, 1).End(3).Row sh.Range("A4").Resize(, 10) = vbNullString Set curt = sh.Range("E5:I" & Ro) curt.Interior.ColorIndex = xlNone For i = 1 To curt.Rows.Count Set F_rg = curt.Rows(i).Find(0, lookat:=1) If F_rg Is Nothing Then GoTo next_row If rg_to_del Is Nothing Then Set rg_to_del = curt.Rows(i) Else Set rg_to_del = Union(rg_to_del, curt.Rows(i)) End If next_row: Next i If Not rg_to_del Is Nothing Then ' rg_to_del.Delete rg_to_del.Interior.ColorIndex = 35 End If Set rg_to_del = Nothing next_sheet: Next End Sub
    1 point
  28. قناة الاستاذة ساجدة العزاوى الاستاذ اسلام رجب قناة الاستاذ عماد غازى قناة الاستاذ ياسر خليل واستاذة كثيرة من على اليوتيوب
    1 point
  29. تفضل اخى الكريم ومن فضلك لابد من التفاعل والمشاركة الإيجابية مع جميع الأعضاء وأتمنى من الله التوفيق لك دائما هايبر لينك - 1.xlsm
    1 point
  30. الاخوة الكرام نرجو شرح دالة INDEX و MATCH الطريقة الخامسه من طرق الباشمهندس علي السحيب بطريقتكم السهله المميزه جعلها الله في كفة حسناتكم Index Function.rar شهلدة السحيب الجميلة.rar
    1 point
  31. أهلا بك أخي الكريم إليك الملف التالي لللأخ يحيى حسين فيه شرح وتطبيق للدالة Index INDEX Function Tutorial.rar
    1 point
  32. السلام عليكم أ / خالد التعامل مع اتمام الموظف ل 5 سنوات او 10 سنوات بالتمام يختلف بين الحالات الثلاثة ( aa,bb.cc ) تم المطلوب .. وقم بمراجعة كافة الحالات ( aa bb cc ) بأمثلة مختلفة ..اقل من سنتين - سنتين - اكثر من سنتين - خمس سنوات - اكثر من خمس سنوات - عشر سنوات - اكثر من عشر سنوات .. وعند التأكد من كافة النتائج يمكنك الاعتماد على المعادلة هي طويلة لكثرة الشروط والحالات وربما سأجد طريقة لجعلها ابسط من ذلك وعندها سأضعها هنا لحضرتك =CHOOSE(MATCH(L14,{10000,3599,1799,719},-1),IF(AND(G15=10,E15=0,C15=0),(((5*O14*0.5)+((G15-5)*O14)+(O14*(E15/12))+(O14*(C15/365)))*2/3),(5*O14*0.5)+((G15-5)*O14)+(O14*(E15/12))+(O14*(C15/365))),IF(L13<>"bb",(5*O14*0.5)+((G15-5)*O14)+(O14*(E15/12))+(O14*(C15/365)),IF(AND(E15=0,C15=0,G15=5),((5*O14*0.5)+((G15-5)*O14)+(O14*(E15/12))+(O14*(C15/365)))*1/3,((5*O14*0.5)+((G15-5)*O14)+(O14*(E15/12))+(O14*(C15/365)))*2/3)),IF(L13<>"bb",(O14*G15*0.5)+(O14*(E15/12)*0.5)+(O14*(C15/365)*0.5),((O14*G15*0.5)+(O14*(E15/12)*0.5)+(O14*(C15/365)*0.5))*1/3),IF(L13<>"bb",(O14*0.5)+(O14*(E15/12)*0.5)+(O14*(C15/365)*0.5),"لا يستحق العامل مكافأة نهاية خدمة" )) MUHAMMAD SULAIMAN MUJAHID GUL_2_2.rar
    1 point
  33. شرح دالة Index فهي أكثر مرونة من غيرها للمبدع ياسر خليل إليك المعادلة التالية ضع المعادلة في الخلية F4 =IFERROR(INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)),"") شرح المعادلة ************* الجزء الأول الدالة IFERROR وتستخدم الدالة في حالة حدوث خطأ في النواتج ولها عدد 2 بارامتر : الأول هو القيمة value والثاني value_if_error أي القيمة التي توضع في حالة حدوث خطأ .. البارامتر الأول هنا هو الجزء الأول (الخاص بالبحث) INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)) والبارامتر الثاني هو الجزء "" أي أنه عند البحث وعدم وجود نتائج للبحث فإنه يحدث خطأ #N/A ولتجنب الخطأ توضع القيمة فراغ ، عن طريق أقواس التنصيص مرتين متتاليتين الجزء الثاني هو الجزء الخاص بالبحث INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0)) والدالة Index من الدوال البحثية لها 3 بارامترات .. ------------------------------------------------ ** البارامتر الأول النطاق اللي المفروض عايزين النتائج منه ، أو مصفوفة القيم المراد البحث داخلها ولو وقفنا داخل المعادلة وحددنا الجزء ده $C$12:$C$16 وضغطنا من لوحة المفاتيح F9 هنلاقي النتائج بهذا الشكل {12;15;18;21;24} ودي مصفوفة القيم المراد البحث داخلها ** البارامتر الثاني هو رقم الصف داخل مصفوفة القيم ، مش رقم الصف في ورقة العمل .. طيب إزاي هنعرف رقم الناتج أو الصف المراد البحث عنه داخل المصفوفة هنا بنستخدم الدالة Match ودي دالة بحث بردو بتجيب رقم الصف MATCH(B4,$B$12:$B$16,0) دا البارامتر الثاني وهنا بتتم عملية البحث عن قيمة البحث الموجودة في الخلية B4 وبيتم البحث عن قيمة الخلية B4 في النطاق $B$12:$B$16 ودا بردو مصفوفة النطاق ..يعني لو حددنا السطر ده وضغطنا F9 من لوحة المفاتيح هتلاقي الناتج بهذا الشكل {"معلم";"خبير";"مساعد";"مدرس";"اخصائى"} فاللي بيحصل إنه بيبحث عن القيمة الموجودة في الخلية B4 داخل المصفوفة دي .. القيمة الموجودة كلمة "معلم" ودي أول كلمة في المصفوفة يعني رقم 1 إذاً رقم الصف هو واحد (وأؤكد ليس المقصود رقم الصف في ورقة العمل .. المقصود رقم نتيجة البحث داخل المصفوفة ) طيب رقم 0 دا ايه فايدته ... فايدته إننا بنقول لعملية البحث إنها تكون متطابقة تماماً .. تطابق عملية البحث للقيمة المراد البحث عنها >> إحنا دلوقتي عندنا نطاقين أو مصفوفتين للقيم (الأولى المراد استخراج النتيجة منها) و (الثانية المراد البحث بداخلها) الإكسيل بيقوم الأول بالبحث قبل ما يظهر النتيجة (دي الخطوات المنطقية للعمل) .. بيقوم بالبحث عن القيمة الموجودة في الخلية B4 داخل المصفوفة الخاصة بيها .. طلع الناتج 1 لأنها أول نتائج البحث خلاص وصل الإكسيل لرقم ناتج البحث داخل المصفوفة ..ياخد الرقم دي ويشوف النتيجة رقم1 الموجودة في المصفوفة الأول ..هيلاقي إن رقم 1 في المصفوفة الأولى هو رقم 12 ** البارامتر الثالث اختياري ودا هنا ملوش استخدام لأن المصفوفة مكونة من بعد واحد فممكن نكتب رقم 1 أو نتركه من غيره ما نكتبه لأن رقم 1 هو الافتراضي =INDEX($C$12:$C$16,MATCH(B4,$B$12:$B$16,0),1) >>>>> عشان نفهم أبعاد المصفوفة ذات البعدين ------------------------------------------------- ضع المعادلة التالية في أي خلية =INDEX($B$12:$C$16,MATCH(B4,$B$12:$B$16,0)) المصفوفة الأولى هي $B$12:$C$16 نخلي بالنا هنا المصفوفة بتاخد القيم من عمودين ..يبقا المصفوفة ثنائية الأبعاد نحدد الجزء اللي فات ونضغط F9 من لوحة المفاتيح هنلاقي النتائج بهذا الشكل {"معلم",12;"خبير",15;"مساعد",18;"مدرس",21;"اخصائى",24} لو ركزنا هنعرف شكل المصفوفة .. بتاخد قيم الصف من العمودين مع بعض يعني مثلاً : معلم و 12 في صف واحد وداخل المصفوفة مع بعض بيفصل بينهم فاصلة عادية بعد كدا الصف اللي بعديه هتلاقي خبير 15 وبردو بيفصل بينهم فاصلة عادية ... أما الفاصل بين قيم المصفوفة أقصد البعد الثاني بيتم الفصل بفاصلة منقوطة بمعنى آخر : ********** معلم 12 أول صف في المصفوفة خبير 15 ثاني صف في المصفوفة مساعد 18 تالت صف في المصفوفة وهكذا .. (بيفصل بين الصفوف فاصلة منقوطة) داخل الصف الواحد عمودين لأن المصفوفة من بعدين : عمود 1وعمود 2 (بيفصل بين الأعمدة داخل المصفوفة فاصلة عادية) ناخد مثال بسيط عشان نفهم العملية إزاي بتتم : لو عايزين رقم الصف 4 والعمود 1 هنشوف المصفوفة .. رقم البصف 4 هنلاقي مدرس 14 ، ورقم العمود المطلوب هو العمود 1 إذاً الناتج كلمة مدرس يا ريت تكون النقطة دي وضحت ************************************************************************** نجرب المعادلة دي ونشوف اللي فهمناه =INDEX($B$12:$C$16,MATCH(B4,$B$12:$B$16,0),1) ع السريع هيتم البحث داخل المصفوفة ذات البعدين (طالما إنها ذات بعدين إذاً سيتم الاستعانة بالبارامتر الثاني والثالث للدالة Index) عشان نعرف رقم الصف المطلوب ورقم العمود المطلوب هنا رقم الصف هنجيبه من خلال الدالة Match هنلاقي رقم الصف هو 1 وأخيراً البارامتر التالت ودا كتبناه 1 يعني العمود الأول إذاً الناتج النهائي هو كلمة "معلم" لو غيرنا رقم العمود من 1 إلى 2 هيتغير الناتج إلى 12 لو غيرنا رقم العمود إلى 3 هيديني خطأ لأن المصفوفة ذات بعدين مش 3 .. الخطأ #REF! أرجو أن أكون وفقت في توصيل المعلومة
    1 point
  34. السلام عليكم ورحمة الله وبركاته شرح عمل نطاق ديناميكي أو قائمة مطاطية Dynamic Range أول شيء سنقوم به هو تسمية نطاق أرقام الجلوس ، وهنتعلم إزاي نخلي النطاق ديناميكي يعني مش ثابت من خلية محددة إلى خلية أخرى محددة ، كل اللي هنعمله إننا هنحدد أول خلية ، أما آخر خلية به رقم جلوس فدي هتتحدد بشكل ديناميكي ؛ عشان لو زودت أرقام جلوس يتغير النطاق بدون تدخل منك >> بندخل على التبويب Formulas ثم Name Manager ونضغط New (سأقوم بحذف كل النطاقات الغير هامة أو مكررة) ونكتب في حقل Name اسم النطاق هنسميه (رقم_الجلوس) ، وفي الحقل المسمى Refers to هنكتب المعادلة بهذا الشكل : ='كنترول شيت'!$B$11:INDEX('كنترول شيت'!$B$11:$B$500,COUNTA('كنترول شيت'!$B$11:$B$500)) الجزء الأول في المعادلة بيحدد بداية النطاق ألا وهو الخلية B11 وبما إن خلية البداية لازم تكون ثابتة فبنضيف علامات الدولار قبل اسم العمود ورقم الصف لتصبح بهذا الشكل $B$11 نلاحظ في المعادلة إنه بيتم الإشارة إلى ورقة العمل اللي فيها النطاق ، وورقة العمل هي "كنترول شيت" ، والتي تحتوي على أرقام الجلوس في العمود B بداية من الخلية B11 بعدما حددنا خلية البداية وضعنا : (نقطتين فوق بعض) عشان الجزء اللي ورا النقطتين فوق بعض هو دا المسئول عن تحديد آخر خلية في النطاق الجزء الثاني في المعادلة (المسئول عن البحث عن آخر رقم جلوس في النطاق) INDEX('كنترول شيت'!$B$11:$B$500,COUNTA('كنترول شيت'!$B$11:$B$500)) الدالة INDEX دالة فهرسة أو بحث ، ودي ليها ثلاثة بارمترات : ** البارامتر الأول عبارة عن مصفوفة لقيم النطاق .. يعني لو خدنا السطر السابق ووضعناه في خلية ووضعنا علامة يساوي قبله (الناتج هيكون آخر رقم جلوس في النطاق) ولو جينا بعد القوس المفتوح بعد اسم الدالة INDEX ووضعنا مؤشر الكتابة بيظهر تلميح مع المعادلة .. هتلاقي كلمة Array في التلميح بلون أسود عريض Bold انقر عليه بالماوس ، هيحدد لك في المعادلة مصفوفة القيم اللي هي في مثالنا 'كنترول شيت'!$B$11:$B$500 هو دا نطاق أرقام الجلوس .. واستخدمنا هنا رقم 500 كحد أقصى للبيانات ، ممكن نغير رقم 500 إلى أي رقم أكبر زي 1000 أو أكتر .. نيجي نضغط F9 من لوحة المفاتيح بعد ما حددنا الجزء ده في المعادلة هنلاقي قيم النطاق بالكامل بما فيها الخلايا الفارغة ، الخلايا الفارغة هتاخد القيمة صفر ، وبقية القيم هي عبارة عن أرقام الجلوس {1983;1984;1985;1986;1987;1988;1989;1990;1991;1992;1993;1994;1995;1996;1997;1998;1999;2000;2001;2002;2003;2004;2005;2006;2007;2008;2009;2010;2011;2012;2013;2014;2015;2016;2017;2018;2019;2020;2021;2022;2023;2024;2025;2026;2027;2028;2029;2030;2031;2032;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0;0} هو دا شكل القيم داخل المصفوفة .. طبعاً عشان نلغي اللي عملناه نضغط Ctrl + Z من لوحة المفاتيح للتراجع (الحركة اللي عملناها عشان نفهم شكل المصفوفة التي سيتم البحث داخلها) ** البارامتر الثاني وهو لمعرفة عدد الصفوف ، والمطلوب إننا نجيب عدد الصفوف التي تحتوي على قيم فقط (الخلايا التي تحتوي على قيم دون الأصفار) وهنا تم استخدام دالة COUNTA ودي دالة سهلة لعد القيم دون الفراغات ، وسيتم عد نفس النطاق COUNTA('كنترول شيت'!$B$11:$B$500) ولو ضغطنا F9 من لوحة المفاتيح هنلاقي الناتج لهذا الجزء هو 50 أي أن عدد أرقام الجلوس 50 ** البارامتر الثالث وهو اختياري ولم يتم الإشارة إليه في المعادلة وهو عدد الأعمدة ، ودا هنا الإكسيل بيفهم إن عدد الأعمدة واحد فقط لأننا شغالين على عمود واحد فقط ألا وهو العمود B. لو عايز تعرف شكل النطاق بعد وضع المعادلة ادخل على Name Manager وحدد اسم النطاق (رقم_الجلوس) ثم انقر على كلمة Edit ثم أخيراً انقر على السهم الأحمر على يمين المعادلة ، ستجد أن الإكسيل سيقوم بتحديد النطاق الديناميكي .. قم بإضافة أرقام جلوس أخرى ، وعيد نفس الخطوات وشوف النتيجة بنفسك (ستجد أن النطاق ديناميكي وليس ثابت)
    1 point
  35. شرح معادله INDIRECT وكذا شرح داله offest للمبدع ياسر خليل شرح المعادله INDIRECT.rar شرح داله اوفيست للاستاذ ياسر خليل.rar
    1 point
  36. جزاك الله خير الجزاء استاذ .. وشكر الله جهدك .. مقدره جدا لك هذا الجهد وتعبك بالتفصيل ضبط الحمدلله وفعلا طلع لي الاكسيل بصيغه exe .. لكن ماتظهر مباشرة الفورم .. يظهر الاكسل نفسه برفق لكم الناتج Backup of dalal_m.rar
    1 point
  37. هذا تجميع لأهم الدروس والمواضيع المميزة بالمنتدى ضم روابط المواضيع المثبتة من أعمال معلمينا الفضلاء ومبدعينا في صفحة واحدة .. وذلك من باب التجديد والتغيير وإعطاء مساحة اكبر للمواضيع المتجددة .. *********************************************************************** أولا : توجيهات للأعضاء الجدد في المنتدى ثانيا : طلب من جميع الخبراء وجميع الاعضاء النشطاء الذين يتصدون للحلول وإجابة السائلين *********************************************************************** القسم الأول : الجداول والاستعلامات: الاستعلام الجدولي والمعايير القسم الثاني : النماذج: شرح أداة WebBrowser 1 2 شاشة انتظر من فضلك !! | سلسلة مهارات في أكسس | 06 | توسيط النماذج داخل النافذة أو الإطار طريقة إبداعية لتغيير خلفيات جميع النماذج إعادة تسمية العناصر الكثيرة دفعة واحدة في النموذج بأسماء متسلسلة مثل : ( Box2 , Box1 , ... ) ⭐ كيف تغير اللغة في برامجك ⭐ ✨💻 صفحة رئيسية متطورة بقائمة جانبية وأزرار فرعية ⭐ التحكم الكامل فى واجهة اكسس ( تصغير بجوار الساعة - توسيط - اخفاء - تغيير أيقونة شعار أكسس ) القسم الثالث : التقارير: مسقط التقارير او صانع التقارير انشاء شريط طباعة للتقرير القسم الرابع : الماكرو والوحدات النمطية VBA: إنشاء دروس VBA أكسس كشكول VBA ترجمة النصوص وتحويلها إلى صوت في vba باستخدام جوجل ( تجارب وفوائد ) :: دالة لحساب أيام الحضور والغياب .. وفكرة عد القيم النصية في حقول السجل الواحد :: اجعل برنامجك يعمل على النواتين 32بت و 64بت اجعل برنامجك يعمل على النواتين 32بت و 64بت _ طريقة ثانية شخابيط ابو جودى: سلسلة منافع مختلفة لتجميعات دوال عامة وافكار مختلفة ( بداية مهمه لتسجيل الاخطاء) شخابيط ابو جودى: سلسلة منافع مختلفة لتجميعات دوال عامة وافكار مختلفة ( FileDialog ) شخابيط ابو جودى: سلسلة منافع مختلفة لتجميعات دوال عامة وافكار مختلفة ( بداية مهمه لتسجيل الاخطاء) شخابيط ابو جودى: سلسلة منافع مختلفة لتجميعات دوال عامة وافكار مختلفة ( FileDialog ) شخابيط وافكار : اليوم اقدم اليكم منفعة لا غنى عنها (ImmediateWindowHelper) تفقيط عام متعدد : تحويل الارقام وقيمة ارقام العملة أو ( عملات متعددة ) الى نص مع التفقيط باللغة العربية ولغة اخرى منتقى التواريخ "Date pickers" القسم الخامس : قواعد البيانات SQL وما يتعلق بها: أكسس و اسكيوال سيرفر Access with Sql Server الأكسس و SQL جُمل SQL مشاركة قاعدة البيانات على الانترنت بواسطة SQL Server [تطبيق] تحويل قاعدة بيانات اكسس الى SQL Server (الجزء الاول _ الجزء الخامس) ربط الاكسيس ب php القسم السادس : البرامج والأدوات والإضافات: إدارة الجداول المرتبطة ، أداة وشروحات نظام مراسلة واشعارات شبيه بالفيس بوك معالج بحث وتصفح مسقط التصفح كارنيهات باستخدام باركود ماتركس - QR code محاكاة برنامج واتساب بالاكسس .. هدية لاوفيسنا القائمة المختصرة - Shortcut menu ارسال رسائل whatsapp (وتساب) بدون حفظ الرقم رسائل whatsapp (وتساب) في اكسس رسائل whatsapp (وتساب) بدون حفظ الرقم ( الكاتب الذكي لدوال المجال في أكسس Dloockup, DCount, DMax, DMin, Dfirst, DLast , DSum, DAvg) ⭐⭐(( مكتبة الأكواد الخاصة )) :: الإصدار الثاني 2.0 ⭐⭐ ، /// ، مكتبة الأكواد الخاصة | سلسلة هدايا الأكسس | 04 | 🎁 - 📟 آلة حاسبة 📟 - هدية مميزة مفتوحة المصدر 🎁 🖌️✏️👨😉🧑‍💻 ... برنامج دردشة بين المستخدمين على الشبكة ... 👨‍💻🧑‍💻✍️😊✏️🖊️ 🎁 :: هديتي لكم :: 🌷📨 >> برنامج مرسال الواتسأب - مع المرفقات - << ✉️ 🙂🌷💌 🎁 :: مرسال الواتسأب :: 📨 :: الإصدار الثاني 2.0 :: مطور :: 🧬🏹 🎁 هدايا الأكسس ✨ | 03| زاد المثابر للحصول على أسماء العناصر في أكسس | أداة رائعة للمطورين 🧛🏻‍♂️ [الاصدار الثاني] ارسال رسائل جماعية لعدد x من المستخدمين على الواتس اب في الاكسس هدية: برنامج تصدير بيانات من جداول/استعلامات اكسس الى اكسل ، 32بت و 64بت هداء لكم برنامج بسيط للديون والسداد 🟢 واتساب ويب web.watsapp 🟢 هدية : تصدير كائنات دفعة واحدة الى قاعدة أخرى أو حسب إختيارك 🧮 الكاتب الذكي لدوال المجال |::| 📜 نسخة مطورة ومحدثة |::| 😊 الإصدار الثاني 2.0 ⭐ كيف تغير اللغة في برامجك ⭐ القسم السابع : الأفكار والنصائح والتوجيهات: مواضيع مهمة .. قراءة وتفكيك بيانات الحقل الى حقول تطبيقات وأفكار وتلميحات تخفيض امان windows وتسجيل المكتبات عند تنصيب البرامج هام لمطورى ومصممى قواعد البيانات إنتبهوا حتى لا تواجهوا مشاكل مع العملاء خلاصة الأقوال .. حول مسائل الحماية 🔒🔑💪🏻 القسم الثامن : مواضيع متنوعة: ملف للبحث عن المواضيع في هذا المنتدى بعض المواضيع المتميزة والمهمة ( 8 ) الحماية برقم القرص الصلب والمعالج واللوحة الأم شرح أكسس 2003 - 2007 - 2010 - 2013 ( صوت وصورة ومرفقات ) رفع نسخة احتياطية على السحابة (google drive) ::💡 أفكار وفوائد 💡:: أسهل طريقة لعمل مربعات صح ✔ أو خطأ ✘ بالحجم واللون الذي تريده ❌☑️✔️✅❎ ⭐⭐ طريقة إبداعية لتحديث نسخة الواجهات FE 🖥️ لدى المستخدمين بدون برامج أو أدوات خارجية 😊👌⭐⭐ رمز الاستجابه السريع QR CODE حسب متطلبات هيئة الضرائب السعودية: ------------------------------------------------------ 1. https://www.officena.net/ib/topic/112126-موضوع-مهم-للنقاش-ماهو-مستقبل-الاكسس-بعد-تطبيق-المرحله-الثانيه-للفاتوره-الاكترونيه/ 2. الموضوع والمرفقات النهائية لرمز الاستجابه السريع QR CODE حسب متطلبات هيئة الضرائب السعودية 3. https://www.officena.net/ib/topic/112589-مكتبة-الموقع-الفاتورة-السعودية-المبسطة/ --------------------------------------------------------------------------------------------------------------------------------------------------------------- القسم التاسع : الدروس والشروحات والمشاريع : طريقة /اضافة صوت للاكسس مع التحكم فى (الايقاف/التشغيل) للصوت تصميم قاعدة بيانات احترافيه لإدارة يوميات وشئون العاملين
    1 point
  38. اذا ذكر الأخ العزيز والأستاذ الفاضل / يحيى حسين ملك المعادلات ولاسيما الــ SUMPRODUCT فليتنحي الجميع طبعا
    1 point
  39. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته .... أخي وأستاذي الكريم : محمد صالح لا يسعني إلا أن أتقدم لك بالشكر والثناء على ما أفدتني به .... قد تعلمت منك .... ويجب عليَ حينئذٍ شكرك ... إذ من لم يشكر المخلوق لم يشكر الخالق .... من علمني حرفأً صيرني عبداً ..... شكراً لك مرة آخرى ....
    1 point
  40. تفضل اخي الكريم إذا أردت معرفة الكلمات الرابعة فأكثر استعمل المعادلة الثانية مرفق ملفك بعد التعديل والشرح تحياتي للجميع قص الجمل2.rar
    1 point
  41. إخوانى الأفاضل ( المدرسون منكم ) إليكم : برنامج كنترول لمدرسة اعدادية بمصر تم تصميمه منذ فترة وكنت وقتها أتمنى ان أجد صدى وتقدير لجهودى .. إلا أن جهل مديرى المدارس لدينا بالحاسب الآلى وبيروقراطية النظام الذى يفضل العمل اليدوى الشاق ( على أساس اللى تعرفه أحسن من اللى متعرفهوش ) حال دون استكمال وتعميم البرنامج ، وبالصدفة المحضة وأنا أبحث فى أعمالى القديمة وجدت هذا التطبيق وأردت مشاركتى له إياكم علماً بأنه يحتوى على الكثير من الأفكار المفيدة والأكواد الاحترافية التى سوف تعجبكم. باختصار .. هو برنامج مفتوح لكل من يريد الاستفادة منه والتطوير فيه بشرط ألآ يبخل علينا بملاحظاته أو أفكاره البناءة .. مع خالص التحية Prep.rar
    1 point
×
×
  • اضف...

Important Information