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

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

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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      6

    • Posts

      8,723


  2. محمد طاهر عرفه

    محمد طاهر عرفه

    إدارة الموقع


    • نقاط

      2

    • Posts

      8,707


  3. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      1

    • Posts

      12,194


  4. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      1

    • Posts

      9,814


Popular Content

Showing content with the highest reputation on 19 مار, 2021 in all areas

  1. يا صديقي أقل شيء يمكن ان تعمله هو رفع ملف بما تريد ولا تدع من يريد المساعدة ان ينشأ لك ملفاً بهذا الموضوع(احتراماً للوقت ليس الا) الكود المطلوب (العامود D الفرز تنازلي العامود E الفرز تصاعدي) Option Explicit Sub Salim_Order() Dim Mmax%, i%, x% Dim S_lst As Object Dim Txt Set S_lst = CreateObject("System.Collections.SortedList") With Sheets("Salim") If .Range("D1").CurrentRegion.Rows.Count > 1 Then .Range("D1").CurrentRegion.Offset(1). _ Resize(.Range("D1").CurrentRegion.Rows.Count - 1). _ ClearContents End If Mmax = .Cells(Rows.Count, 1).End(3).Row i = 2 Do Until i = Mmax + 1 If .Range("A" & i) <> vbNullString Then Txt = Split(.Range("A" & i), "_") If Not S_lst.Contains(CInt(Txt(2))) Then S_lst.Add CInt(Txt(2)), "_" & Txt(1) & "_" & Txt(0) End If End If i = i + 1 Loop x = 2 For i = S_lst.Count - 1 To 0 Step -1 Cells(x, 4) = S_lst.GetKey(i) & S_lst.GetByIndex(i) x = x + 1 Next x = 2 For i = 0 To S_lst.Count - 1 Cells(x, 5) = S_lst.GetKey(i) & S_lst.GetByIndex(i) x = x + 1 Next End With Set S_lst = Nothing End Sub الملف مرفق (اضغط فقط غلى الزر ٌRun) Assri_Ahmad.xlsm
    2 points
  2. اعرض الملف اضافة محتوى القائمة المنسدلة آليا السلام عليكم I needed to Autofill the validation dropdown list with specific values for a large number of cells For a cell corresponding to Row B and Column C , I wanted the drop down to show those values CCCC,CCC,CC,C,CB,B,BB,BBB,BBBB and so on for the rest of the matrix The First step was to prepare the dropdown required contents using equations as shown on the table to the right side السلام عليكم أردت ملء بيانات القائمة المنسدلة لعدد كبير من الخلايا ضمن مصفوفة بحيث يكون متوى القائمة المنسدلة عند تقاطع العمود المعنون ب حرف C مع الصف المعنون بحرب B كالتالي CCCC,CCC,CC,C,CB,B,BB,BBB,BBBB و عليه فالخطوة الاولي قمت بتجهيز المحتوى المطلوب عن طريق المعادلات فى الجدول على اليمين كما هو مبين فى الصورة التالية Next i prepare the following VBA code , which reads the values from the above table and add them to the dropdown list contents for all selection cells The code reads the values 11 cells to the left ,of the target cell , and you can change that of course based on your case و الخطوة التالية كانت اعداد الكود المطلوب لتنيذ العملية كما هو مبين أدناه حيث يقوم الكود بقراءة المحتوى من الجدول اعلاه و اضافته ضمن القائمة المنسدلة لكل الخلايا فى الجدول على اليمين و الكود تم اعداده ليضف فى محتوى القائمة المنسدلة لكل خلية فى الجدول القيمة فى الخلية على بعد 11 عمود الي اليمين فى الجدول السابق، و طبعا يمكن تعديل هذه القسمة بحسب الجدول السابق Sub FillDropDown() Dim myrow As Byte, mycol As Byte, TargetVal As String myrow = Selection.Rows.Count mycol = Selection.Columns.Count mycell = ActiveCell.AddressLocal For i = 0 To myrow - 1 For j = 0 To mycol - 1 Range(mycell).Activate ActiveCell.Offset(i, j).Activate '11 is the number of cells the source value exist to the right of the target cell TargetVal = ActiveCell.Offset(0, 11).Value With ActiveCell.Validation .Delete .Add Type:=xlValidateList, AlertStyle:=xlValidAlertStop, Operator:= _ xlBetween, Formula1:=TargetVal .IgnoreBlank = True .InCellDropdown = True .InputTitle = "" .ErrorTitle = "" .InputMessage = "" .ErrorMessage = "" .ShowInput = True .ShowError = True End With Next j Next i End Sub To run the code , add it in a module in your file , and make sure the file is saved as macro-enabled excel file then select all the target cells in the left side table , Press Alt+F8 , then choose the code قم باضافة الكود لملفك، و تأكد من حفظ الملف بصيغة تفعيل الماكرو macro-enabled excel file ثم قم باختبار كافة الخلايا المستهدفة اضغط ALT+F8 شغل الكود You will find that all cells in the target table has now the required dropdown list contents as targeted ستجد أن كافة الخلايا التي تم اختيارها قتم تم اضافة قائمة منسدلة لها بالمحتوى المطلوب كما هو مبين فى الصورة The Reason behind developing this code was that i needed to fill the dropdown lists in 225 cell with variable contents in this example related to using Analytic Hierarchy Process (AHP) technique to compute relative weights for any evaluation criteria ملاحظة: أضفت المحتوى باللغة الانجليزية ايضا لدراسة تأثير ذلك على انتشار المشاركة كما يقولون الحاجة ام الاختراع ، فقط احتجت لهذا الأمر لملء 225 خلية بقوائم منسدلة ذات محتوى متغير فى هذا المثال الخاص بالأوزان النسبية لمعايير التقييم صاحب الملف محمد طاهر تمت الاضافه 19 مار, 2021 الاقسام قسم الإكسيل
    1 point
  3. راجع هذا الرابط جيدا وستجد ملف به يتجاوز هذا الخطا للاستاذ حمادة عمر جزاه الله خيرا رابط الملف والشرح المحدث كذلك للاستاذ ضاحي الغريب جزاه الله خيرا تعديل اخر رابط موضوع وملف الاستاذ ضاحي الغريب
    1 point
  4. الخلايا المدمجة داخل الجدول (العدو الأول للأكواد والمعادلات ) تجنب استعمالها اذا كان لا بد منها يجب عزلها عن بقية الجدول بصف فارغ(يمكن اخفاءه) في الصورة مثلاً الخلية A127 مدموجة مع الخلبة B127 الخلية A128 مدموجة مع الخلبة B128 و هكذا حتى A136.. ونفس الشيء من A37 الى A46 / من A82 الى A91 الكود المطلوب بعد ازالة دمج الخلايا (الصفحة Salim من هذا الملف) Option Explicit Sub del_data() Dim Ar(), ar_Num() Dim Rg_To_copy, cel As Range Dim My_sh As Worksheet Dim Dic As Object Dim y%, k% Set My_sh = Sheets("Salim") Set Dic = CreateObject("Scripting.Dictionary") Ar = Array("B5", "B37", "B50", "B82", "B95", "B127") ar_Num = Array(30, 10, 30, 10, 30, 10) For k = LBound(Ar) To UBound(Ar) For Each cel In My_sh.Range(Ar(k)).Resize(ar_Num(k)) If Not IsEmpty(cel) Then Rg_To_copy = My_sh.Range("B" & cel.Row).Resize(, 7) Rg_To_copy = Application.Transpose(Rg_To_copy) Rg_To_copy = Application.Transpose(Rg_To_copy) Dic(Dic.Count) = Join(Rg_To_copy, "*") End If Next If Dic.Count Then My_sh.Range(Ar(k)).Resize(ar_Num(k), 7).ClearContents For y = 0 To Dic.Count - 1 My_sh.Range(Ar(k)).Offset(y).Resize(, 7).Value = _ Split(Dic.Item(y), "*") Next End If Dic.RemoveAll Next k Set Rg_To_copy = Nothing: Set cel = Nothing Set My_sh = Nothing: Set Dic = Nothing Erase Ar: Erase ar_Num End Sub الملف مرفق salim-coding.xlsm
    1 point
  5. بالإضافة لردود الأساتذة وحيث انك لم ترفع ملف لما تريد وحسب ما فهمت جرب المعادلة التالية حيث تضع الرقم المطلوب بالخلية A1 =IF(MOD(A1,8)>0,"لايقبل القسمة علي 8","قابل القسمة /8")
    1 point
  6. كان يجب من البداية ادراج الملف ولا ضرورة لاضاعة الوقت Option Explicit Sub Salim_Order() Dim Mmax%, i%, x% Dim S_lst As Object Dim Txt Dim Ar(), itm Ar = Array(17, 16, 15, 14, 13, 12, 11) x = 1 Set S_lst = CreateObject("System.Collections.SortedList") With Sheets("Salim") .Range("f1").CurrentRegion.ClearContents Mmax = .Cells(Rows.Count, 1).End(3).Row For Each itm In Ar i = 1 Do Until i = Mmax + 1 If Left(.Range("A" & i), 2) = CStr(itm) Then Txt = Split(.Range("A" & i), "_") S_lst.Add CInt(Txt(2)), .Range("A" & i) End If i = i + 1 Loop For i = S_lst.Count - 1 To 0 Step -1 .Cells(x, 6) = S_lst.GetByIndex(i) x = x + 1 Next S_lst.Clear Next itm .Range("G1").Resize(x - 1).Formula = _ "=INDEX($B$1:$B$100,MATCH(F1,$A$1:$A$100,0))" .Range("F1").CurrentRegion.Value = _ .Range("F1").CurrentRegion.Value End With Set S_lst = Nothing End Sub AhMad_Assri.xlsm
    1 point
  7. تم تحديث الملف بإضافة الاصدار الربع فى مكتبة الموقع اضغط هنا Press here to Download revision 4.0 Analytic Hierarchy Process AHP This version allows to define relative weights for 15 criteria vs 9 only in previous version due to the large number of cells with dropdown list adn to avoid possible entry errors i developed a code to help filling the list (click here) , but no need to used it as this file already have the dropdown lists ready for use تحديد الأوزان النسبية للمعاير المختلفة هذا الإصدار يتيح حساب الأوزان النسبية لعدد 15 معاير مقابل 9 فقط في الإصدارات السابقة و لصعوبة اضافة بيانات القوائم المنسدلة لهذا العدد الكبير من الخلايا دون خطأ يدويا تم اعداد كود خاص للمساعدة فى اعداد الملف (يمكن الاطلاع عليه من هنا) و لكن لا حاجة للكود لاستخدام هذا التطبيق فالملف جاهز للاستخدام فقط تأكد من تفعيل الاكواد To use the file , start by listing the criteria you want to evaluate and define the relative weights for or use for evaluation الخطوة الأولى هي تسجيل قائمة الخيارات التي تود حساب أوزانها النسبية أو استخدامها فى التقييم it will be automatically listed in the comparison matrix as shown in this picture ستجد أن الخيارات قد تم اضافتها بالفعل إلى مصفوفة التقييم Evaluate the relative weights of each 2 items by choosing the appropriate value in the corresponding cell when comparing option A withoption B: then AAAA means major preference towards A compared to B AAA means medium preference AA means minor preference A means slight preference AB means both options have equal preference You need only to complete one half of the matrix , either the upper or lower half once done you will see the relative weights ready قم بتقييم الأهمية النسبية لكل خيارين على حدة عند مقارنة الخيار (A) و (B) فان الاختبار بكون كالتالي اذا كانت أهمية الخيار A كبيرة جدا مقارنة بالخيار B فيكون التقييم AAAA و تقل حتي تصل فارق بسيط فى الاهمية فى صالح الخيار أ فنعطي تقييم أ واحدة A و اذا تساوت الأهمية يكون الاختيار AB قم بتعبئة النصف العلوي او السفلي فقط من المصفوفة و ليس كامل المصفوفة فمجرد الانتهاء يمكنك الحصول على الأهمية النسبية لكل عنصر in the file you can go one additional step and evaluate difference alternatives based on the weighted criteria using the last section i the file all you have to do is to rate each option against the existing criteria using any fixed scale . 1 to 5 for example و الان يمكنك أيضا استخدام نفس الملف لعمل تقييم للبدائل المتاحة باستخدام المعايير و أوزانها النسبية و ذلك فى الجزء الأخير من الملف قم بتسجيل البدائل مثلا نوعين من السيارات أو ثلاثة ثم قم بتقييم كل نوع بحسب المعايير باستخدام مسطرة تقييم ثابتة (من 1 - 5 على سبيل المثال) The file will show the final evaluation scores and you can now make your decision in this case you should choose Model #2 ستجد قيمة التقييم النهائي لكل خيار موجودة فى الملف ، فقط قم باتخاذ القرار فى هذه الحالة سنختار الموديل #2 The previous versions of this file were used successfully in making many types of informed decisions by many of my friends and colleagues. for example choosing a car, comparing job offers , choosing a candidate for a job, ........ and and mainly tender evaluation الإصدارات السابقة من هذا التطبيق استخدمها العديد من زملائي و أصدقائي بنجاح لاتخاذ قرارات هامة بطريقة عملية و مهجية من صمن الأمثلة التي وردتني و العهدة على من أخبرني 😅: اختيار سيارة، اختيار مرشح لوظيفة، مقارنة وظيفة ممكنة بوظيفة حالية...، و أشياء أخرى، ... و أكثر الاستخدام كان فى تقييم المناقصات ملاحظة: أضفت المحتوى باللغة الانجليزية ايضا لدراسة تأثير ذلك على انتشار المشاركة
    1 point
  8. لا تأثير 🙂 1. صحيح انك حاليا لا تحتاج اليه ، ولكن قد تحتاج اليه في المستقبل ، 2. لا توجد علاقة بين كم مرة هذا الحقل موجود في الجداول ، مثلا: معلومات الحقل LVL تكتبها مرة واحدة في الجدول tbl_C ، ثم تستعملها لأكثر من جدول. لا تنسى انت فقط تقرأ/تختار من هذا الجدول ، ولكنك تحفظ المعلومة التي تم اختيارها في بقية الجداول ، واذا بعد تجربتك لازلت تحتاج الى توضيح ، ارفق مثال فيه نفس الحقل مكرر في اكثر من جدول 🙂 3. مافي اي مشكلة 🙂 جعفر
    1 point
  9. تفضل أستاذ hakimino2002 هذا العمل كنت قمت بتنفيذ من عدة سنوات أرجو أن يكون مفيد لك ويمكنك إضافة التعديلات والتقارير التي تنقصه تجربة عقارات.rar
    1 point
  10. الطريقة ان تجعل : تنسيق حقل / حقلي الحضور والانصراف تاريخ كامل ( General Date ) وطبعا سيكون الحضور في يوم والانصراف في اليوم الذي يليه ولكن يمكنك من احتساب الوقت الفعلي الصحيح
    1 point
  11. ممكن ان يكون ما تريد في هذا الملف Abd_Aziz_2.xlsx
    1 point
  12. هناك لا نهاية من الاعداد التي تقبل القسمة على 8 ( هل هناك مجال لمعرفة بين اي عددين تريد ذلك) مثلا جميع الارقام بين 20 و 70 التي تقبل القسمة على 8 هذا مثال عما أقصده ألصفحة Salim من هذا الملف ) Mushal_1.xlsx
    1 point
  13. اتفضل يا دكتور صلاحيات المستخدمين للشاشات(3).accdb
    1 point
×
×
  • اضف...

Important Information