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

ياسر خليل أبو البراء

المشرفين السابقين
  • Posts

    13,165
  • تاريخ الانضمام

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

  • Days Won

    412

كل منشورات العضو ياسر خليل أبو البراء

  1. هناك موضوع في المنتدى قم بالبحث عنه يمكن أن يساهم في حل المشكلة وهو منع خاصية النسخ واللصق .. ابحث في المنتدى عن الموضوع لعله يفيدك ..
  2. الأخ الفاضل كاسر الأمواج هلا غيرت اسم الظهور ليعبر عن شخصكم الكريم وجزيت خيراً بمثل ما دعوت لي .. بارك الله فيك على دعائك الطيب أخي الكريم سمير النجار الكود الذي أرفقته بالفعل أفضل وأنا أستخدمه بشكل دائم لكن يسبب مشاكل مع الخلايا المدمجة في بعض نسخ الأوفيس إليك ملف مرفق فيه الطريقتين لكل من الخلايا المدمجة والغير مدمجة (يرجى من الأخوة الكرام تجربة الأكواد .. وذكر النتيجة لكل كود مع ذكر نسخة الأوفيس التي يعمل عليها) بالنسبة لي : الأربعة أكواد الخاصة بمسح الخلايا المدمجة والغير مدمجة تعمل بشكل جيد بكلتا الطريقتين .. كلاهما يؤدي نفس الغرض بدون مشاكل (نسخة الأوفيس لدي 2013 64 بت) أرجو من الجميع أن يذكر نسخة الأوفيس ويجرب الأكواد لمعرفة نسخة الأوفيس التي تسبب مشاكل مع الخلايا المدمجة تقبلوا تحياتي Randomize Numbers & ClearContents For Merged And Unmerged Cells YasserKhalil.rar
  3. استخد الدالة SUM بدلاً من علامة الجمع لتلافي الخطأ الناتج عن المعادلة تكون بهذا الشكل علامة يساوي يليها اسم الدالة SUM ثم ما بين أقواس ( ) نضع الخلايا المطلوب جمعها تقبل تحياتي
  4. أخي الكريم سامي في المشاركة السابقة أشرت إليك لموضوع مهم لابد من الإطلاع عليه "بداية الطريق لإنقاذ الغريق" الرابط من هنا وإليك شرح فيديو
  5. جزيت خيراً أخي الكريم أسامة على دعائك الطيب والحمد لله الذي بنعمته تتم الصالحات حاول تتابع الموضوعات المختلفة في المنتدى لتستفيد ..هذا سيصقلك بشكل كبير .. حاول تقديم يد المساعدة للأعضاء بقدر ما تستطيع ، فهذا من شأنه أن يطور من إمكانياتك بشكل كبير تقبل تحياتي
  6. وجزيت خيراً أخي الحبيب أسامة بمثل ما دعوت لنا وزيادة إلى لقاء في موضوعات أخرى .. مع أوفيسنا ستجد الكنوز فلا تتوقف عن البحث تقبل تحياتي
  7. قم بإزالة الفلترة وستجد النتائج تتحقق كما تريد وتتم عملية الطرح على الخلايا بعد إزالة الفلترة إذا لم يكن المطلوب يؤدي الغرض يرجى إرفاق شكل النتائج المتوقعة
  8. أخي الكريم أحمد الشكر موصول للأخ الحبيب سليم صاحب الفكرة الأولى والأهم في الموضوع فجزاه الله خير الجزاء ، ولا حرمنا الله من إبداعاته المتواصلة والغير منقطعة .. أفضل من كلمة شكر قولك "جزاكم الله خيراً" وإلى لقاء في موضوعات أخرى .. لا تتوقف فأنت في أوفيسنا منتدى العجائب والغرائب في الإكسيل تقبل تحياتي
  9. بارك الله فيك أخي وحبيبي ياسر العربي تسلم على الملف الجميل ..كدا الملف المرفق الأخير يوضح الصورة لمن أراد الاستفادة من الموضوع بخلاف الملف الأصلي .. وبعدين ميغركش شكلي ..أنا باين عليا كدا بس متعرفنيش .. !! احذر !! Be Careful ... تقبل وافر تقديري واحترامي
  10. الحمد لله الذي بنعمته تتم الصالحات الحمد لله أن تم المطلوب على خير تقبل تحياتي أخي الغالي إبراهيم
  11. أخي الكريم قم بالإطلاع على الرابط التالي التوجيه العاشر ...أضفت صور توضيحية
  12. بارك الله فيك أخي الحبيب ياسر العربي مش تقول إنها بالتنسيق الشرطي .. بردو ترمي الملف وتطلع تجري !! فيه حد بيخوف في المنتدى غيري في انتظار شرح لما تم القيام به ليستفيد الجميع ..رغم إني عرفت الخدعة لكن اكيد فيه ناس كتير تحب تعرف اللي تم في الملف تقبل تحياتي
  13. أخي العزيز أفضل من الشكر قولك "جزاكم الله خيراً" وفي انتظار تغيير اسم الظهور وفي انتظار موضوعات جديدة لك واستفسارات جديدة .. لا تتوقف فأنت في أوفيسنا منارة المنتديات في الوطن العربي
  14. أخي الكريم إبراهيم أبو ليلة قم بإلغاء الفلترة في ورقة العمل المراد العمل عليها والمسماة "في حالة الفلترة" ضع المعادلة التالية في عمود مساعد في الخلية H5 مثلاً ثم قم بسحبها لنهاية النطاق المستخدم =SUBTOTAL(109,E5) ثم في عمود الناتج ضع المعادلة التالية في الخلية C5 ثم قم بسحبها لنهاية النطاق المستخدم =IFERROR(INDEX($E6:$E$15,MATCH(TRUE,INDEX(H6:$H$15<>0,),0))-D5,"") قم بفلترة النطاق C3:F14 على أي حقل وليكن حل الكود كما فعلت أنت واختر رقم 1 لشرط الفلترة ، ولاحظ النتائج F.rar
  15. أخي الكريم يوسف عطا لاحظت فعلاً أن النتائج مختلفة في 23.7 ... والكود استخرج الرقم 23.07 كما هو موجود في المدة بالضبط ... ولو كانت القيمة 23.7 هي الصحيحة فعلى أي أساس يتم احتسابها بهذا الشكل وهو موجودة في المدة 23.07 .... كما أشرت إلى نقطة أخرى في مشاركتي السابقة وهي غير منطقية بالنسبة لي ولكن قمت بها ليتناسب مع ملفك .. وهو المدة 00:00 .. في حسابك اليدوي جعلتها 0.01 الحمد لله أن تم المطلوب على خير ..وجزيت خيراً بمثل ما دعوت لي تقبل تحياتي
  16. تم رفع الموضوع ليشاهده الأخ أسامة أبو عمر تقبل تحياتي أخي الكريم أسامة
  17. أخي الكريم أسامة فيه في التوقيع الخاص بي فهرس الموضوعات التي قمت بطرحها في المنتدى روح للفهرس هتلاقي موضوع بعنوان "بداية الطريق لإنقاذ الغريق" ... اطلع على الموضوع جيداً ستجد حل لمشكلتك بها الرابط من هنا تقبل تحياتي
  18. اخي الكريم يرجى تغيير اسم الظهور للغة العربية كما يرجى الإطلاع على موضوع التوجيهات في الموضوعات المثبتة في صدر المنتدى لمعرفة كيفية التعامل مع المنتدى بشكل أفضل إليك الكود التالي يوضع في حدث ورقة العمل عله يفي بالغرض توضع الأكواد بين أقواس الكود وليس كما فعلت في مشاركتك الأولى Private Sub Worksheet_Change(ByVal Target As Range) If Not Application.Intersect(Target, Columns("H:H")) Is Nothing Then Target.Offset(, -2).Value = Date If IsEmpty(Target) Then Target.Offset(, -2).Value = "" End If End Sub تقبل تحياتي
  19. أخي الكريم ضع الكود التالي في حدث ورقة العمل taqrers Private Sub Worksheet_BeforeRightClick(ByVal Target As Range, Cancel As Boolean) If Target.Column = 3 And Target.Row > 1 Then Cancel = True UserForm1.Show End If End Sub يقوم الكود باستدعاء فورم .. ومن خلال الفورم يمكنك اختيار أوراق العمل التي تريد نقل البيانات إليها أنشيء فورم وضع عليه ListBox1 و CommandButton1 .. ثم ضع الكود التالي في حدث الفورم Private Sub UserForm_Initialize() Dim WS As Worksheet Dim I As Integer Dim iPos As Integer Me.ListBox1.MultiSelect = fmMultiSelectMulti For Each WS In ThisWorkbook.Worksheets If Not WS.Name = ActiveSheet.Name Then Me.ListBox1.AddItem WS.Name End If Next WS End Sub Private Sub CommandButton1_Click() Dim I As Integer, Sh As Worksheet, lRow As Long With Me.ListBox1 If .ListIndex <> -1 Then For I = 0 To .ListCount - 1 If .Selected(I) Then Set Sh = Sheets(.List(I)) With Sh If Not IsEmpty(ActiveCell) Then lRow = ActiveCell.Row .Range("A3").Value = Date .Range("B3").Value = ActiveSheet.Cells(lRow, "B").Value .Range("C3").Value = ActiveSheet.Cells(lRow, "C").Value .Range("D3").Value = ActiveSheet.Cells(lRow, "D").Value .Range("F3").Value = ActiveSheet.Cells(lRow, "F").Value .Range("G3").Value = ActiveSheet.Cells(lRow, "H").Value .Range("H3").Value = ActiveSheet.Cells(lRow, "N").Value .Range("I3").Value = ActiveSheet.Cells(lRow, "T").Value .Range("J3").Value = ActiveSheet.Cells(lRow, "U").Value .Range("K3").Value = ActiveSheet.Cells(lRow, "V").Value .Range("L3").Value = ActiveSheet.Cells(lRow, "X").Value .Range("M3").Value = ActiveSheet.Cells(lRow, "Y").Value .Range("N3").Value = ActiveSheet.Cells(lRow, "Z").Value .Range("O3").Value = ActiveSheet.Cells(lRow, "AA").Value .Range("P3").Value = ActiveSheet.Cells(lRow, "AB").Value MsgBox "تم إعداد تقرير للموظف " & ActiveSheet.Cells(lRow, "C").Value & " في ورقة " & .Name, 64 End If End With End If Next I End If End With End Sub أرجو أن يكون المطلوب . يمكنك التعديل في أسطر الترحيل بما يتناسب مع ملفك .. يمكنك اختيار أكثر من ورقة عمل للترحيل إليها وذلك من خلال اختيار أوراق العمل من الـ ListBox تقبل تحياتي Determine Destination Sheet On UserForm Using Worksheet Before Right Click YasserKhalil.rar
  20. أخي الكريم يرجى الإطلاع على موضوع التوجيهات في الموضوعات المثبتة في صدر المنتدى لمعرفة كيفية تغيير اسم الظهور (فضلاً لا أمراً) لقد نسيت موضوعك لعدم متابعتك له .. لدي أفكار ولكن غير مكتملة بعد .. لي سؤال : هل هناك ورقة عمل أساسية لنقل البيانات إليها أو ورقة عمل أساسية لنقل البيانات منها أم أن التعامل سيكون مع أي ورقة عمل للنقل منها أو النقل إليها ؟ حاول توضح طلبك بشكل آخر ..الغي الأكواد الموجودة في ملفك وضع تصورك للمطلوب .. كأن الموضوع جديد ..لأن الأكواد بهذا الشكل لن تؤدي المطلوب بالنسبة إليك .. ويا ريت تضرب مثال أو مثالين ..يعني مثلاً لو أنا في ورقة كذا وعملت كليك يمين في الخلية كذا واخترت الورقة كذا هيحصل كذا ..اضرب مثالين او ثلاثة لتتضح الصورة أكثر تقبل تحياتي
  21. أخي الكريم أسامة صراحة أنا أجهل كيف تم عمل الخطوط باللون الرمادي من الأساس ولن أخجل من السؤال : كيف تم عملها ؟ سؤال آخر أنت تريد أن تكون المعطيات بناءً على العمود I وهناك في بعض الخلايا فراغ كالخلية I13 و I14 .. كيف سيكون التعامل معها وعلى أي أساس؟أم أن العمود على العمود F سيكون أفضل ؟ مزيد من التوضيح ليساعدك الأخوة الكرام بالمنتدى تقبل تحياتي
  22. أخي الكريم الملف المرفق في المشاركة السابقة ليست بالمعادلات إنما بالأكواد .. جرب الملف الأول وشوف النتائج مضبوطة أم لا ..بعدها سنقوم إن شاء الله بتطبيق الأكواد على ملفك الأصلي قم بالإطلاع في توقيعي "فهرس موضوعات العبد الفقير إلى الله" على موضوع اسمه "بداية الطريق لإنقاذ الغريق" لتعرف كيف تتعامل مع محرر الأكواد في البداية .وكيفية تفعيل الماكرو إذا أردت الحل بالمعادلات سأوافيك به أيضاً عندي حل بالمعادلات ولكن أريد أولاً التأكد من صحة النتائج التي تم الحصول عليها تقبل تحياتي
  23. أخي الكريم سامي جرب الكود التالي عله يفي بالغرض يتم استخراج عدد الأرقام الغير مكررة في الخلية الواحدة في العمود الثاني وفي العمود الثالث يتم كتابة كلمة "Yes" إذا تحققت الشروط ..أن يحتوي الرقم في الخلية في العمود الأول على 0 و 2 و 5 و 8 ويكون عدد الأرقام الغير مكررة في الخلية الواحدة يساوي 4 Sub Test() Dim I As Long For I = 2 To Cells(Rows.Count, 1).End(xlUp).Row Cells(I, "B").Value = UniqueDigits(Cells(I, "A").Value) If Digit(Cells(I, 1), 0) >= 1 And Digit(Cells(I, 1), 2) >= 1 And Digit(Cells(I, 1), 5) >= 1 And Digit(Cells(I, 1), 8) >= 1 And Cells(I, "B").Value = 4 Then Cells(I, "C").Value = "Yes" End If Next I End Sub Function Digit(R As Range, N As Integer) As Integer Dim I As Integer, S As String S = R.Value For I = 1 To Len(S) If Mid(S, I, 1) = N Then Digit = Digit + 1 Next I End Function Function UniqueDigits(xNum As String) As Long Dim I As Integer For I = 0 To 9 If InStr(1, xNum, I) Then UniqueDigits = UniqueDigits + 1 End If Next I End Function أرجو أن يكون المطوب تقبل تحياتي Check For Specific Digits Within Numbers YasserKhalil.rar
  24. أخي أسامة يطول الموضوع حين لا تتوفر المعطيات الكاملة للطلب .. يرجى إرفاق شكل النتائج المتوقعة بشكل يدوي لتتضح الصورة ويستطيع الأعضاء تقديم المساعدة المناسبة للموضوع .. وحاول تحذف أي أوراق أو نطاقات لن يكون عليها العمل حتى تظهر صورة المطلوب بشكل أوضح تقبل تحياتي
  25. أخي الكريم كاسر الأمواج هلا غيرت اسم الظهور ليعبر عن شخصكم الكريم بالنسبة لسؤالك .. نعم يمكن مسح البيانات في الخلايا المدمجة بالإشارة إلى النطاق الذي يحتوي الخلايا المدمجة بالكامل ثم تعيين فراغ لقيمة الخلايا مثال : Range("C31:M32").Value="" تقبل تحياتي
×
×
  • اضف...

Important Information