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

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

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

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

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

  • Days Won

    412

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

  1. أخي الكريم أشرف أشكرك على شرك .. الحمد لله أن تم المطلوب على خير وفي انتظار موضوعات أخرى واستفسارات أخرى تفيدك وتفيد الجميع تقبل تحياتي
  2. أخي الكريم جرب الملف التالي عله يفي بالغرض Archive V1.rar
  3. أخي الكريم لعل الملف غير واضح للكثيرين يرجى إلقاء مزيد من الضوء حول المطلوب .. كيف تريد أن يكون شكل عمليات الإدخال ..هل ستتم في خلية واحدة كما في المرفق .. 100+200+500+400 أم أنك لديك تصور آخر .. يرجى وضع تصورك مهما كان شكل هذا التصور وإن شاء الله تجد الاستجابة من إخوانك بالمنتدى تقبل تحياتي
  4. أخي الكريم أشرف جودة أهلاً بك في المنتدى ونورت بين إخوانك يرجى الإطلاع على موضوع التوجيهات في الموضوعات المثبتة في المنتدى إليك الملف المرفق التالي يجيب على سؤالك إن شاء الله يفي بالغرض Test.rar
  5. الأخ الكريم البرنس هشام إليك الملف التالي فيه أربع ملفات ريجستري تقوم بمهمة التمكين كل ملف لنسخة أوفيس مختلفة شوف نسخة الأوفيس عندك واختار الملف المناسب واشتغل عليه (دبل كليك ثم Yes أوك) Enable Macros.rar
  6. موضوع الحماية موضوع شائك خصوصاً أن حماية الإكسيل ضعيفة ..إلا إذا قمت بتحويل ملفك إلى ملف تنفيذي قم بالبحث في المنتدى عن هذا الأمر ستجد أكثر من موضوع يتناول الامر .. غير هذه الطريقة لا أعرف طريقة أخرى مضمونة فكل السبل تؤدي إلى الكسر ..
  7. أخي الكريم أهلاً بك في المنتدى ونورت بين إخوانك راجع موضوع التوجيهات في الموضوعات المثبتة في المنتدى للضرورة قم بضغط ملفك ثم إرفاقه لسهولة العمل والتواصل مع مشكلتك تقبل تحياتي
  8. هسميك العضو المختصر (كلمتين وبس) نبهت عليك يا ولدي ان تسرد في الشرح عموماً الموضوع بسيط جدا استخدم التنسيق الشرطي حدد النطاق B4:C19 روح للتبويب Home اختار Conditional Formatting ثم اختر New Rule واختار آخر خيار عندك Use Formula to وشوية كلام كدا وضع المعادلة التالية في المستطيل الأبيض في أسفل النافذة المفتوحة =$C4<>"" وبعدين انقر Format وادخل على التبويب Fill واختار اللون اللي يعجبك وأوك مرتين وبس خلاص جرب تضع أي بيانات في النطاق C4:C19
  9. الكود الذي أرفقته يعمل بشكل جيد معي قم باستبدال الكود الموجود بالكامل بشكل مبدئي للتأكد من عمل الكود .. ثم ناقش الكود الآخر .. وأنا صراحة ال أحبذ العمل في حدث تغيير ورقة العمل وخصوصاً أنك تقوم بأكثر من مهمة في نفس الوقت عموماً حاول مرة أخرى وإن شاء الله يشتغل معاك بالنسبة لدخول الملف قمت فقط بإزالة تمكين الماكرو ففتح معي بشكل طبيعي ..الموضوع مش محتاج محترف عشان يدخل الملف ولما دخلت الملف أزلت الحدث في فتح المصنف وبس خلاص .. يرجى عند رفع ملف إزالة كلمات السر تماماً .. راجع التوجيهات في صدر المنتدى في الموضوعات المثبتة
  10. أخي الكريم أبو عبد الرحمن إليك الكود التالي عله يفي بالغرض ... Private Sub Worksheet_Change(ByVal Target As Range) Dim LR1 As Long, LR3 As Long, T As Long If Target.Cells.Count <> 1 Then Exit Sub If Target.Address = "$A$2" Then With Application .ScreenUpdating = False: .Calculation = xlManual: .EnableEvents = False End With Sheets(3).Range("A5:F1000").ClearContents LR1 = Sheets(1).Range("A" & Rows.Count).End(xlUp).Row LR3 = Sheets(3).Range("B" & Rows.Count).End(xlUp).Row + 1 For T = 2 To LR1 If Sheets(1).Range("U" & T) = Sheets(3).Range("A2").Value Then Sheets(3).Range("A" & LR3) = LR3 - 4 Sheets(3).Range("B" & LR3) = Sheets(1).Range("G" & T).Value Sheets(3).Range("C" & LR3) = Sheets(1).Range("I" & T).Value Sheets(3).Range("D" & LR3 & ":E" & LR3) = Sheets(1).Range("M" & T & ":N" & T).Value Sheets(3).Range("F" & LR3) = Sheets(1).Range("AR" & T).Value LR3 = LR3 + 1 End If Next T With Application .EnableEvents = True: .Calculation = xlAutomatic: .ScreenUpdating = True End With End If End Sub
  11. جزيت خيراً أخي الحبيب عمار أما مسألة تقبيل الأيدي فأنا مجرد عبد فقير ومتعلم بسيط أسعى جاهداً للتعلم وتوصيل ما تعلمت إلى إخواني ويكفيني منك دعوة بظهر الغيب رجاء لا تضع ما تكتب من ردود داخل اقتباس .. إذا أن الاقتباس مخصص لاقتباس قول شخص آخر غيرك وليس الاقتباس لكلامك أخي عمار تقبل تحياتي
  12. أخي الكريم إليك الحل التالي عله يفي بالغرض (طبعاً أنا لا أعرف شكل التنسيقات التي قمت بها) يمكنك التعديل بما يتلائم معك الفكرة في استخدام Toggle Button لتفعيل وتعطيل التنسيق الشرطي تعتمد الفكرة في إضافة التنسيق الشرطي في حالة التفعيل (للثلاثة نطاقات) ، وفي حالة التعطيل يتم حذف التنسيق الشرطي .. أرجو أن تفي بالغرض Private Sub ToggleButton1_Click() If ToggleButton1.Caption = "ON" Then With Range("A2:A1503") .FormatConditions.Add xlExpression, Formula1:="=IF(OR(B2<>0,C2<>0,D2<>0,E2<>0,F2<>0),TRUE,FALSE)" .FormatConditions(1).Interior.ColorIndex = 4 End With With Range("B2:B1503") .FormatConditions.Add xlExpression, Formula1:="=IF(OR(C2<>0,D2<>0,E2<>0,F2<>0),TRUE,FALSE)" .FormatConditions(1).Interior.ColorIndex = 4 End With With Range("C2:C1503") .FormatConditions.Add xlExpression, Formula1:="=IF(OR(D2<>0,E2<>0,F2<>0),TRUE,FALSE)" .FormatConditions(1).Interior.ColorIndex = 4 End With ToggleButton1.Caption = "OFF" Else With Range("A2:C1503") .FormatConditions.Delete End With ToggleButton1.Caption = "ON" End If End Sub STORE.rar
  13. أخي الحبيب عمار الموضوع ببساطة استخدام دالة IF الشرطية .. حاجة من الاتنين نتيجة الدالة يا إما True يا إما False فلو كانت الخلية C2 اللي هي تعتبر مرجع البحث فارغة إذاً النتيجة False أما إذا كانت الخلية C2 تحتوي بيانات وليست فارغة يتم عمل التالي استخدام دالة البحث Search والتي ترجع رقم في حالة وجود النص المراد البحث عنه أو خطأ في حالة عدم وجود النص المراد البحث عنه شكل الدالة =SEARCH($C$2,$C4:$F4,1) لها 3 بارمترات الأول : النص المراد البحث عنه وبما أن النص في خلية ثابتة ألا وهي C2 فإنه تم استخدام علامات الدولار قبل اسم العمود ورقم الصف البارامتر الثاني هو النطاق الذي يتم البحث فيه وهو يشمل الصف بداية من العمود الثالث إلى السادس .. الثالث والأخير هو بداية البحث وهنا البداية من أول حرف إذا تحقق وجود النص فإن الدالة ترجع قيمة رقمية فيتم استخدام الدالة Sum لجمع القيم الرقمية ، فإذا كان الناتج أكبر من صفر فذلك دليل على تحقق الشرط ووجود النص داخل النطاق المراد البحث فيه أرجو أن أكون وفقت في توصيل المعلومة
  14. جزيت خيراً أخي الحبيب عبد العزيز الفضل لله ثم لك في الإبداع الأول ..ما أضفت إلا القليل جداً البركة فيك يا أبو فتح
  15. أخي الكريم يرجى مراجعة التوجيهات في الموضوعات المثبتة في المنتدى بالنسبة لطبك أنت تتعامل مع جدول وليس نطاق عادي أولاً لابد من تحويل النطاق العادي إلى جدول حدد النطاق ثم من التبويب Insert اختر الأمر Table فتم تحويل النطاق لجدول قف في أي خلية بالجدول سيظهر لك تبويب في نهاية التبويبات باسم Design ابخث عن الخيار Total Row وعلم عليه علامة صح .... بس خلاص سيظهر معك قائمة الدوال تقبل تحياتي
  16. أخي الحبيب سليم الخطوات لمن يريد أن يطبقها كالتالي : '[ActiveX Control] على ورقة العمل من النوع [TextBox1] بفرض أن لديك مربع نص '[Linked Cell] لتكون هي [C2] قم بعمل كليك يمين على مربع النص ثم خصائص ثم حدد 'الذي يحتوي البيانات ثم ادخل على التنسيق الشرطي واستخدم [C4:F15] حدد النطاق '=IF($C$2="",FALSE,SUM(--ISNUMBER(SEARCH($C$2,$C4:$F4,1)))>0)
  17. اخي الحبيب عبد العزيز ممكن إضافة بسيطة لكي لا يتوقف الماوس Private Sub CommandButton1_Click() If TextBox4 = "" Or TextBox4 = Val(TextBox2) * Val(TextBox3) Then TextBox4 = Val(TextBox2) + Val(TextBox3) Else TextBox4 = Val(TextBox2) * Val(TextBox3) End If End Sub يعني افضل اعمل كليك مرة يجمع ومرة يضرب ..
  18. أخي الكريم عبد العزيز بارك الله فيك أخي المستخدم ... يا ريت تخلي اسمك يعبر عن شخصيتك بص للرابط التالي الخاص بحلقات افتح الباب من هنا وابحث عن كلمة Method عن طريق Ctrl + F .. وحاول تقرا الأسطر الخاصة بالحدث عشان تقدر تفهم الفرق بين Method الحدث و Property الخاصية لما تقرا الفرق بنيهم أقدر أضيف لك إن الحدث قد يتبعه حاجة اسمها بارمترات ودي بتكون بالشكل ده After:= دا شكل البارامتر وكل بارامتر بيؤدي وظيفة ما أو له هدف ما .. ابحث في الحلقات عن كلمة Sort أو الفرز ستجد أن هذا الحدث فيه أكثر من بارامتر ... لتستطيع أن تفهم طبيعة الحدث Method تقبل تحياتي
  19. جرب التعديل في الكود بهذا الشكل Sub FillTRUE() Dim Source As Worksheet, Target As Worksheet, Cell As Range, Area As Range Dim FoundColumn, FoundRow Set Source = Sheet1: Set Target = Sheet2 With Application .ScreenUpdating = False: .EnableEvents = False: .Calculation = xlManual End With For Each Cell In Source.Range("B2:B" & Source.Cells(Rows.Count, "B").End(xlUp).Row) FoundRow = Application.Match(Cell.Offset(, -1), Target.Columns(1), 0) FoundColumn = Application.Match(Cell, Target.Rows(1), 0) If IsNumeric(FoundColumn) And IsNumeric(FoundRow) Then Target.Cells(FoundRow, FoundColumn).Resize(, Cell.Offset(, 2).Value) = "TRUE" If Cell.Offset(, 2).Value >= 6 Then Target.Cells(FoundRow, 2) = "Y" End If Next Cell With Application .ScreenUpdating = True: .EnableEvents = True: .Calculation = xlAutomatic End With End Sub Put TURE Or Y V2.rar
  20. تسلم يا واعد .. يا أيها النجم الساطع قريباً إن شاء الله
  21. أخي الكريم سعد عابد مشكور على مرورك العطر وإعجابك بالمشاركة وجزيت خيراً على دعائك الطيب المبارك تقبل تحياتي
  22. أخي الغالي عبد العزيز العزيز العزيز التانية مقصودة مش غلطة في الكتابة مشكور على كلماتك الطيبة ونشاطك الرائع في المنتدى بصراحة أنت جعلت المنتدى كخلية النحل ربنا يجعله في ميزان حسناتك وأحببت أن أشارك أخونا الحبيب إبراهيم الموضوع لكي يعلم تمام العلم أننا متابعون للموضوع جميعنا ، فهات ما عندك .. فنحن معك إن شاء الله
  23. الحمد لله أن تم المطلوب على خير وفي العودة يمكنك طرح موضوع جديد بالطلب الجديد تقبل تحياتي
  24. بارك الله فيك أخي الغالي إبراهيم على كل ما تقدمه بصراحة الكود الأخير في المشاركة عجبني فعملت اختصار له باستخدام الحلقة التكرارية الكود يعمل على النطاق A1:A26 Sub Borders_Properties() Dim I As Long, II As Long Range("A1:A26").ClearFormats For I = 1 To 26 Step 2 Range("A" & I).Borders.Value = II + 1 II = II + 1 Next I End Sub تقبل تحياتي
×
×
  • اضف...

Important Information