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

abouelhassan

05 عضو ذهبي
  • Posts

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

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

  • Days Won

    8

كل منشورات العضو abouelhassan

  1. جرب =IFERROR(MID($A$1,ROW()-ROW($A$1)+1,1),"") = =TRANSPOSE(A1:A5) (TRANSPOSE) في جميع إصدارات إكسل بدءًا من إكسل 2007
  2. جرب Sub KeepFirstWordOnly() Dim cell As Range Dim words() As String Dim i As Integer For Each cell In Range("A1:A10") ' تغيير النطاق حسب الحاجة words = Split(cell.Value, " ") cell.Value = words(0) Next cell End Sub هذا الكود يفترض أن الكلمات مفصولة بمسافة. إذا كانت الكلمات مفصولة بفاصلة أو حرف آخر، يجب تغيير الجزء `Split(cell.Value, " ")` ليناسب الفاصلة الصحيحة، على سبيل المثال، `Split(cell.Value, ",")` للكلمات المفصولة بفاصلة.
  3. اليك الطريقه اخى الكريم جرب لإضافة مربع بحث للبحث عن الأصناف في ورقة العمل، يمكنك اتباع الخطوات التالية: 1. **إنشاء مربع حوار بحث:** - قم بالنقر على "مطور" في شريط الأدوات، ثم اختر "إدراج" واختر "زر التحكم". - ارسم مربعًا على الورقة ليكون زر البحث. - انقر بزر الماوس الأيمن على الزر الذي أنشأته واختر "تعيين معرف" لإعطاء الزر اسمًا مثل "btnSearch". 2. **إضافة الكود VBA للبحث:** - انقر بزر الماوس الأيمن على ورقة العمل واختر "عرض الكود". - استخدم الكود التالي لإنشاء نافذة حوار للبحث عن الأصناف Sub SearchItem() Dim wsInventory As Worksheet Dim rngItems As Range, cell As Range Dim searchItem As String ' تحديد ورقة العمل للبحث فيها Set wsInventory = ThisWorkbook.Sheets("اسم_ورقة_العمل") ' مربع حوار البحث searchItem = InputBox("ادخل اسم الصنف للبحث عنه:") ' البحث عن الصنف وعرض النتائج If searchItem <> "" Then Set rngItems = wsInventory.Range("E:E").Find(What:=searchItem, LookIn:=xlValues, LookAt:=xlWhole) If Not rngItems Is Nothing Then MsgBox "كود الصنف: " & rngItems.Offset(0, -1).Value & vbNewLine & "اسم الصنف: " & rngItems.Value, vbInformation, "نتائج البحث" Else MsgBox "لم يتم العثور على الصنف.", vbExclamation, "نتائج البحث" End If End If End Sub يرجى استبدال "اسم_ورقة_العمل" بالاسم الفعلي لورقة العمل التي تريد البحث فيها.
  4. لم استطيع تحميل الملف ممكن تشرح المطلوب
  5. تفضل 1. افتح Excel وانقر على الخلية التي تريد فيها عرض الرقم العمودي. 2. استخدم المعادلة التالية: =TEXTJOIN(CHAR(10),TRUE,MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1)) حيث A1 هو موقع الخلية التي تحتوي على الرقم الذي تريد تحويله إلى شكل عمودي. تأكد من تغيير A1 بموقع الخلية الصحيحة إذا كان الرقم في موقع مختلف. 3. اضغط على Enter. هذا سيعرض الرقم بشكل عمودي في الخلية المستهدفة.
  6. تفضل اخي طبق الاتى إليك كيفية تحويل الكود إلى معادلات: 1. في الخلية B2 في ورقة "Report"، استخدم الدالة VLOOKUP للبحث عن القيمة في الخلية A2 من ورقة "AllData" واسترجاع قيمة بداية التاريخ. =VLOOKUP(A2, AllData!$A$2:$E$1000, 3, FALSE) 2. في الخلية C2، استخدم الدالة VLOOKUP مرة أخرى للبحث عن القيمة في الخلية A2 من ورقة "AllData" واسترجاع قيمة نهاية التاريخ. =VLOOKUP(A2, AllData!$A$2:$E$1000, 4, FALSE) 3. في الخلية D2، استخدم الدالة VLOOKUP للبحث عن القيمة في الخلية A2 من ورقة "AllData" واسترجاع قيمة نوع الاجازة. =VLOOKUP(A2, AllData!$A$2:$E$1000, 5, FALSE) تأكد من تغيير نطاق البحث وفقًا لموقع البيانات الخاصة بك في ورقة "AllData 1. افتح برنامج Excel وقم بإنشاء ورقة عمل جديدة. 2. قم بنسخ البيانات الخاصة بك من ورقة "AllData" إلى الورقة الجديدة. 3. في العمود الأول (الخانة A) في الورقة الجديدة، قم بوضع القيم التي تريد البحث عنها في ورقة "AllData". 4. في العمود الثاني (الخانة B)، استخدم الدالة VLOOKUP للبحث عن بداية التاريخ. 5. في العمود الثالث (الخانة C)، استخدم الدالة VLOOKUP للبحث عن نهاية التاريخ. 6. في العمود الرابع (الخانة D)، استخدم الدالة VLOOKUP للبحث عن نوع الاجازة. 7. ضع المعادلات في الصفوف التي ترغب فيها للبحث عن البيانات. هذه الخطوات يمكن أن تنتج نفس النتائج التي يقوم بتحقيقها الكود السابق
  7. حاول وانا معك بس اهم شيء حاول أن شاء الله تنجح
  8. محتاج شرح بسيط تفصيلي الكود يقوم بترحيل الملون بالاصفر إلى اين
  9. المعادلة تعمل اخى وذكرت لك الأخطاء اين حاول للتعلم
  10. هل تحتاج معادلة ام كود 1. افتح Excel وانقر على الخلية التي ترغب في وضع الصيغة فيها. 2. استخدم الصيغة التالية: حيث أن $A$2:A2 تحدد نطاق البيانات الذي تريد البحث فيه للقيم المكررة، و A2 هو الخلية التي تحتوي على القيمة التي تريد فحصها. 3. اضغط على Enter. هذه الصيغة ستظهر القيمة فقط إذا كانت تظهر للمرة الأولى في النطاق المحدد، وإلا ستظهر خلية فارغة. =IF(COUNTIF($A$2:A2,A2)=1,A2,"") وهذا كود Sub RemoveDuplicatesWithCount() Dim LastRow As Long Dim i As Long Dim UniqueValue As String Dim Count As Long LastRow = Cells(Rows.Count, "A").End(xlUp).Row For i = 2 To LastRow UniqueValue = Cells(i, 1).Value Count = WorksheetFunction.CountIf(Range("A2:A" & LastRow), UniqueValue) If Count = 1 Then Cells(i, 2).Value = UniqueValue Else Cells(i, 2).Value = UniqueValue & " (" & Count & ")" End If Next i End Sub هذا الكود سيقوم بتطبيق الصيغة وسيظهر القيم المكررة مع عددها في الخلية المجاورة. قم بتنفيذ الخطوات نفسها لإضافة الكود إلى وحدة VBA في Excel وتشغيله.
  11. المعادلة الجديدة، يمكننا تغيير المعادلة لاستخدام وظائف تدعمها الإصدارات السابقة من Excel. إليك معادلة بديلة تستخدم الوظائف المتاحة في الإصدارات القديمة: ``` =IF(ISERROR(INDEX($A$1:$A$1000, MATCH(0, COUNTIF($E$1:E1, $A$1:$A$1000) + IF($B$1:$B$1 يرجى استبدال النطاقات ($A$1:$A$1000، $B$1:$B$1000، $C$1:$C$1000، $E$1:E1) بنطاقات البيانات الخاصة بك. هذه المعادلة تستخدم وظائف MATCH وCOUNTIF للبحث عن الأرقام المطلوبة وتجنب التكرار. تأكد من تغيير "تاريخ1" و "تاريخ2" و "اسم المكتب" إلى القيم المناسبة. =IF(ISERROR(INDEX($A$1:$A$1000, MATCH(0, COUNTIF($E$1:E1, $A$1:$A$1000) + IF($B$1:$B$1000>=تاريخ1, IF($B$1:$B$1000<=تاريخ2, IF($C$1:$C$1000="اسم المكتب", 1, 0), 0), 0), 0))), "", INDEX($A$1:$A$1000, MATCH(0, COUNTIF($E$1:E1, $A$1:$A$1000) + IF($B$1:$B$1000>=تاريخ1, IF($B$1:$B$1000<=تاريخ2, IF($C$1:$C$1000="اسم المكتب", 1, 0), 0), 0), 0)))
  12. المعادلة التي استخدمتها هي جزء من صيغة مصفوفة ديناميكية في Excel لاسترداد الأرقام دون تكرار حسب تاريخين معينين واسم المكتب. إليك كيفية استخدام هذه الصيغة: 1. قم بوضع هذه الصيغة في الخلية التي ترغب في استرداد الأرقام فيها. 2. قم بتعديل "تاريخ1" و "تاريخ2" و "اسم المكتب" لتناسب القيم الفعلية التي تريدها. 3. اضغط على Ctrl + Shift + Enter بدلاً من الضغط على Enter وحده. هذا يجعل Excel يفهم أنها صيغة مصفوفة. إليك الصيغة: ``` =IFERROR(INDEX(A:A, SMALL(IF((B:B>=تاريخ1)*(B:B<=تاريخ2)*(C:C="اسم المكتب"), ROW(B:B)-MIN(ROW(B:B))+1), ROWS(A$1:A1))), "") ``` تأكد من تغيير "تاريخ1" و "تاريخ2" و "اسم المكتب" إلى القيم المناسبة.
  13. جرب Private Sub UserForm_Initialize() Dim salesRange As Range Dim cell As Range ' تعيين مجال البيانات Set salesRange = Worksheets("Sheet1").Range("A1:A50") ' قم بتغيير "Sheet1" و "A1:A50" حسب احتياجاتك ' تنسيق البيانات وإضافتها إلى ListBox For Each cell In salesRange ListBox1.AddItem Format(cell.Value, "0.000") Next cell End Sub السؤال الثاني Private Sub ListBox1_Click() Dim selectedCell As Range ' العثور على الخلية المحددة في الصفحة الأصلية Set selectedCell = Worksheets("Sheet1").Range("A1:A50").Find(ListBox1.Value) ' قم بتغيير "Sheet1" و "A1:A50" حسب احتياجاتك ' التأكد من أن الخلية تم العثور عليها If Not selectedCell Is Nothing Then ' التحرك إلى الخلية المحددة selectedCell.Select End If End Sub يمكنك إضافة هذين الكودين إلى مستند Excel باتباع الخطوات التالية: 1. افتح ملف Excel. 2. اذهب إلى "مطور" > "محرر Visual Basic". 3. انقر فوق "إدراج" > "وحدة". 4. قم بلصق الكود في وحدة جديدة. 5. احفظ الملف بامتداد .xlsm. 6. قم بتعيين الوحدة الأولى كـ "UserForm" والوحدة الثانية كـ "ListBox1". 7. أغلق المحرر واستخدم ملف Excel بشكل عادي. لكى تتعلم اخى اتبع ما سبق
  14. كود ثان. يعمل ايه ما هو المطلوب لكى ننفذه انت واضع كود عايز تطبقه طيب ما تطبقه بسيطة تعلم تطبيق الكود أما إذا كان لك طلب تحتاج كود لتنفيذه كنت كتبته من الاول او افتح مشاركة جديدة بها طلبك تقبل احترامى
  15. تفضل =IFERROR(INDEX(A:A, SMALL(IF((B:B>=تاريخ1)*(B:B<=تاريخ2)*(C:C="اسم المكتب"), ROW(B:B)-MIN(ROW(B:B))+1), ROWS(A$1:A1))), "")
  16. جرب هذه الدالة واخبرنى عذرًا على الالتباس. يمكنك استخدام الدالة التالية لجمع الصف الأول بشرط أن تكون القيمة في الصف الثاني غير فارغ =SUM(A1:INDEX(A:A, MATCH(1E+306, B:B, 1))) هذه الدالة تستخدم دالة MATCH للعثور على أول خلية غير فارغة في الصف الثاني، ثم يستخدم الدالة INDEX لإنشاء مرجع للخلية المتناظرة في الصف الأول، وأخيرًا يقوم بجمع القيم في هذا النطاق. =SUM(A1:INDEX(A:A, MATCH(1E+306, B:B, 1)))
  17. جرب Sub CalculateRatio() Dim ws As Worksheet Dim sumRow1 As Double Dim sumRow2 As Double Dim ratio As Double ' تعيين ورقة العمل المطلوبة Set ws = ThisWorkbook.Sheets("اسم الورقة") ' حساب مجموع القيم في الصف الأول لعدد الخلايا التي تحتوي على قيم في الصف الثاني sumRow1 = Application.WorksheetFunction.Sum(ws.Range("A1:F1")) / Application.WorksheetFunction.CountA(ws.Range("A2:F2")) ' حساب مجموع القيم في الصف الثاني sumRow2 = Application.WorksheetFunction.Sum(ws.Range("A2:F2")) ' حساب النسبة ratio = sumRow1 / sumRow2 ' عرض النسبة في الخلية المناسبة ws.Range("G1").Value = ratio End Sub
  18. وضح طلبك اذا كان بدك تطبيق الكود فقط أرى انك تحاول طالما لديك الكود للتعلم أما إذا كان شى ثانى برجاء التوضيح
  19. Sub CalculateRatio() Dim ws As Worksheet Dim sumRow1 As Double Dim sumRow2 As Double Dim ratio As Double ' تعيين ورقة العمل المطلوبة Set ws = ThisWorkbook.Sheets("اسم الورقة") ' حساب مجموع القيم في الصف الأول sumRow1 = Application.WorksheetFunction.Sum(ws.Range("A1:F1")) ' حساب مجموع القيم في الصف الثاني sumRow2 = Application.WorksheetFunction.Sum(ws.Range("A2:F2")) ' حساب النسبة ratio = sumRow1 / sumRow2 ' عرض النسبة في الخلية المناسبة ws.Range("G1").Value = ratio End Sub
  20. ``` =UNIQUE(FILTER(A:A, (B:B>=تاريخ1)*(B:B<=تاريخ2)*(C:C="اسم المكتب"))) ``` 1. قم بتنسيق البيانات في ورقة العمل بحيث تكون الأرقام في العمود A، تواريخ التاريخ في العمود B، وأسماء المكاتب في العمود C. ``` حيث تحتاج إلى استبدال "تاريخ1" و "تاريخ2" بالتواريخ المرغوبة، و "اسم المكتب" بالاسم المناسب. 3. اضغط على Enter لتطبيق الصيغة. هذه الصيغة ستقوم بجلب الأرقام بدون تكرار حسب التاريخين المحددين واسم المكتب.
  21. السلام عليكم استاذي هل بهذه الطريقة يصلح فتح القاعدة من أكثر من شخص فى نفس الوقت
  22. استطيع عمل ذلك لك اخى بأذن الله بس قوانين المنتدى والحماية الفكرية تمنع مشكور
×
×
  • اضف...

Important Information