بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
2,148 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
3
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو يحيى حسين
-
-
أخي محب الاوفس في طلبك هذا انت تحتاج لتصميم فورم يقوم بإضافة الاسماء و حذفها بدون الدخول الى صفحة البيانات
-
أخي خانات التواريخ في ملفك بعضها فارغ و الأصل في اي حركة أن يقابلها تاريخ و أيضاً أخي هل طلبك هو فقط جمع الحركات التي تخص العميل علي شريف من الصنف 560 إذا كان هذا طلبك فحل أخي أيسم يفي بالغرض أما اذا كان طلبك يتحقق بالشروط التالية : المبيعات لشهر 1 و للعميل علي شريف هنا معيارين نستخدم الدالة Sumproduct =SUMPRODUCT(--('حركه يوميه للمخزن'!C7:C47=A6),--(MONTH('حركه يوميه للمخزن'!$A$7:$A$47)=1),'حركه يوميه للمخزن'!$D$7:$D$47) أتمنى ان يكون هذا هو طلبك
-
تفضل اخي هذا هو طلبك و صفحة البيانات مخفية بناء على طلبك محب الاوفيس.rar
-
اخي انت لم تذكر شيء عن القائمة المنسدلة من اين ستقرأ البيانات ارجو ان توضيحها و توضيح المصدر الذي ستقرأ منه اما بخصوص التاريخ فاليوم متغير بناء على الخلية E4 جرب غير التاريخ في الخلية E4 و سيتغير اليوم في الخلية G4
-
عذرا حدث خطأ في التحميل هذا هو الملف محب الاوفيس.rar
-
تفضل اخي اتمنى ان يكون هذا هو طلبك
-
جزاك الله كل خير اخي ايسم كلنا نتعلم من بعضنا البعض لكن بخصوص الاخ المعادلة في الخلية C16 هي ليست بحاجة لوضعها في معادلة If =IF(,SUMIF(B7:B15,"وارد",C7:C15),SUMIF(B7:B15,"وارد",C7:C15)-SUMIF(B7:B15,"<>وارد",C7:C15)) لان المعادلة ستعيد False و ستطبق تلقائياً الشرط الثاني =SUMIF(B7:B15,"وارد",C7:C15)-SUMIF(B7:B15,"<>وارد",C7:C15) فاستخدم الشرط الثاني بدون معادلة IF
-
أخي المعادلة التي اشرت اليها =ROWS(A$6:A6) تقوم ايضاً بعمل تسلسل رقمي و الهدف من حتى تعيد الدالة Small موضع اصغر رقم موجود في التسلسل قم بكتابة هذه المعالة و من ثم اسحبها للأسفل فستجدها تعطيك النتيجة 1 2 3 4 5 ======== لو افترضنا ان لديك مجموعة ارقام في المدى $E$1:$E$9 قم بكتابة هذه المعادة و اسحبها للاسفل =SMALL($E$1:$E$9,ROWS(A$6:A6)) و سترى النتيجة أتمنى أن تكون قد اتضحت لك الصورة ======= بخصوص طلب الاخ safwatscc اذا كنت تستخدم الاكسيل 2003 من القائمة Tools ثم Formula Auditing ثم Evaluate Formula و اختصار المفاتيح لها هو Alt+T+U+F و اذا كنت تستخدم الاكسيل 2007 من التاب Formula ثم Formula Auditing ثم Evaluate Formula
-
أخي افضل طريقة لمعرفة آلية عمل اي معادلة هو استخدام Evaluate Formula و سيقوم الاكسيل تلقائياً بعملية تفسير المعادلة خطوة خطوة و من خلال تتبعك لهذه العملية ستصح لديك القدرة على فهم آلية عمل الاكسيل في التعامل مع المعادلات و امور اخرى يجب معرفتها لكل معادلة من حيث المتغيرات و طبيعة المتغيرات و عددها و اما بخصوص طلبك شرح طريقة استخراج كشف حساب بالمعادلات =IF(ROWS(A$6:A6)<=SUMPRODUCT((Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3)),INDEX(Sheet1!$A$5:$A$100,SMALL(IF((Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3),ROW(Sheet1!$A$5:$A$100)-ROW(Sheet1!$A$5)+1),ROWS(A$6:A6))),"") هذه المعادلة الموجودة في الخلية A6 اولاً المعادلة إبتدئت بمعادلة If و كان الشرط المنطقي لعملية الفحص للمعادلة If هو الجزء الاول من المعادلة ROWS(A$6:A6)<=SUMPRODUCT((Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3)) و هذا الجزء يقوم بإحتساب عدد مرات تكرار اسم الحساب و بداية التاريخ و نهاية و الهدف من هذا الفحص هو ظهور عدد الاسطر في كشف الحساب فاذا كان عدد الاسطر و الذي يحتسب بالمعادة ROWS(A$6:A6) اقل من او يساوي عدد مرات تكرار ظهور الاسم و بداية و نهاية كشف الحساب ستكون النتيجة true و سيطبق الشرط التالي INDEX(Sheet1!$A$5:$A$100,SMALL(IF((Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3),ROW(Sheet1!$A$5:$A$100)-ROW(Sheet1!$A$5)+1),ROWS(A$6:A6))) و هذا هو الجزء المهم في المعادلة استخدمنا الدالة INdex مع المدى الاصلي و الذي يحتوي التاريخ في صفحة الحركات و هو المدى Sheet1!$A$5:$A$100 و لتحديد السطر رقم السطر الذي سنستخرج منه التاريخ استخدمنا SMALL(IF((Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3),ROW(Sheet1!$A$5:$A$100)-ROW(Sheet1!$A$5)+1),ROWS(A$6:A6)) و هنا استخدمنا الدالة small لمعرفة موقع الحركة المقابلة في الدالة index و التي سنصل اليها عن طريق دالة الشرط If من خلال فحص مرات تطابق اسم الحساب و بداية و نهاية التاريخ و التي وضعناها في الشرط (Sheet1!$B$5:$B$100=$B$1)*(Sheet1!$A$5:$A$100>=$B$2)*(Sheet1!$A$5:$A$100<=$B$3) فعند تطابق الشروط الثلاثة بحيث يتطابق التاريخ و اسم الحساب تقوم الدالة بتطبيق الجزء المرتبط بال true في معادلة if و هو ROW(Sheet1!$A$5:$A$100)-ROW(Sheet1!$A$5)+1 و هذه المعادلة لبناء تسلسل رقم من 1 الى نهاية عدد الاسطر المستخدمة و من ثم سيتم ربط نتيجة شرط الفحص مع نتيجة الفحص و ستكون النتيجة متسلسلة رقمية كبيرة و هنا يأتي دور الدالة SMALL في تحديد اصغر قيمة و التي ربطناها بالمعادلة الصغيرة ROWS(A$6:A6) و التي ستعيد لنا رقم السطر الذي ستستخدمه الدالة INDEX في اعطاء النتيجة ============= هذا شرح وافي للمعادلة ============= اقرئه و طبقه مع استخدام الخاصية Evaluate Formula و ستتضح لك الصورة اكثر و اكثر ============= و لا تنسى ان تستخدم Ctrl+Shift+Enter لادخال المعادلة
-
أخي هذا ملف مطبق به طريقة استخدام الدالة في المدى A =COUNTIF($A$2:$A$20,A2)=1 فلو حاولت ادخال رقم مكرر في المدى $A$2:$A$20 فلن يقبل ذلك عدم تكرار الرقم.rar
-
تفضل اخي هذا ملف مرفق Color sum.rar
-
أخي احمد حافظ لو قمت باضافة فراغ بسيط قبل الدالة سيحولها الى تكست في عمود جديد =" "&C2 رغم اني ارى ان طريقة الاخ خبور رائعة جدا في معالجة موضوعك
-
اخي احمد هذا كود من احد المواقع الأجنبية [b]Function ColorFunction(rColor As Range, rRange As Range, Optional SUM As Boolean)[/b] Dim rCell As Range Dim lCol As Long Dim vResult '''''''''''''''''''''''''''''''''''''' 'Written by Ozgrid Business Applications 'www.ozgrid.com 'Sums or counts cells based on a specified fill color. ''''''''''''''''''''''''''''''''''''''' lCol = rColor.Interior.ColorIndex If SUM = True Then For Each rCell In rRange If rCell.Interior.ColorIndex = lCol Then vResult = WorksheetFunction.SUM(rCell,vResult) End If Next rCell Else For Each rCell In rRange If rCell.Interior.ColorIndex = lCol Then vResult = 1 + vResult End If Next rCell End If ColorFunction = vResult [b]End Function[/b] و هذا هو رابط الموضوع الأصلي http://www.ozgrid.com/VBA/sum-count-cells-by-color.htm
-
ارجوكم موضوع عاجل لا يحتمل التاخير
يحيى حسين replied to blackhorse123's topic in منتدى الاكسيل Excel
أخي جرب هذا الرابط فيه موضوع شبيه لموضوعك http://www.officena.net/ib/index.php?showtopic=29255 -
كبف تتم المقارنه بين القيمنين للشخص أو للرقم و في حالة اختلاف القيم
يحيى حسين replied to دعبله's topic in منتدى الاكسيل Excel
هذا حل اخر بعد اذن اخي سالم بحيث يتجاهل الاسطر التي لا تحتوي قيم للمقارنه data-Jsutice.rar -
تلوين الخلايا التي بقي على إنقضاء تاريخها وقت معين
يحيى حسين replied to أبو. مشاري's topic in منتدى الاكسيل Excel
أخي ابو مشاري لقد ارسلت لك على الايميل ملف يحتوي طلبك حسب ما فهمت من ايميلك و لكني هنا من مشاركتك فهمت شيء أخر و عدلت الملف حسب طلبك بحيث انه اذا تم التعديل على التاريخ في المدى الرئيسي و كان تاريخ التعديل ضمن 14 يوم يقوم الاكسيل بحذف اللون الاحمر و العبارة المرفقة معه Justice_1.rar -
تلوين الخلايا التي بقي على إنقضاء تاريخها وقت معين
يحيى حسين replied to أبو. مشاري's topic in منتدى الاكسيل Excel
أخي أبو مشاري الملف يحتوي على الكود التالي Private Sub Workbook_Open() Dim MyCell As Range For Each MyCell In Sheets("æÑÞÉ1").Range("A2:A1000") If IsEmpty(MyCell) Then Exit Sub If MyCell.Value < Date - 14 Then MyCell.Offset(0, 1).Font.Bold = True MyCell.Offset(0, 1).Interior.ColorIndex = 3 MyCell.Offset(0, 1).Value = "ÚÏÏ ÇáÇíÇã ááãÚÇãáÉ åæ " & Date - MyCell End If Next MyCell End Sub و فكرة الكود انه عند فتح الملف يتفعل هذا الكود حيث يقوم بالبحث عن جميع الخلايا في المدى الذي عرفناه من Range("A2:A1000") فاذا كان التاريخ في المدى اقل من 14 يوم حسب طلبك طبعاً يقوم بتلوين الخلية المجاورة و وضع العبارة " عدد أيام المعاملة هو " و يقوم بعملية ربط بينها و بين الفرق بالايام -
تلوين الخلايا التي بقي على إنقضاء تاريخها وقت معين
يحيى حسين replied to أبو. مشاري's topic in منتدى الاكسيل Excel
اخي ابو مشاري جرب المرفق و هو عبارة عن كود يتفعل عند فتح الملف Justice_.rar -
أخي سالم شكرا لك على موضوعك و هذا رابط كنت قد شرحت فيه الدالة sum
-
لا اعتقد انه يمكنك تغيير تنسيق هذه الاحرف و الارقام و لا يمكنك كتابة اسماء مكان هذه الاحرف و لكن يوجد ميزة في الاكسيل 2007 و هي عند استخدام الخاصية جداول Ctl+T و اذا كان حجم الجدول كبير فعند النزول الى اسف يقوم الاكسيل بتحويل رؤوس الاعمدة الى عناوين الجدول الرئيسية
-
أنا مش عارفة انزل المرفقات على الجهاز بتاعى
يحيى حسين replied to sahar_saed's topic in منتدى الاكسيل Excel
أتمنى ان تاخذي مداخلة الاخ محمد طاهر في عين الاعتبار اما بخصوص طلبك و حسب فهمي لمى تريدين لو افترضنا ان الخلية A3 ستشير الى B6 و انت تريدين في الخلية A4 ان يشير الى محتوى الخلية B10 و الخلية A5 تشير الى الخلية B14 إستخدمي هذه المعادلة في الخلية A3 و من ثم اسحبيها للأسفل =INDIRECT("B"&ROWS(A$3:A3)*4+2) -
أخي يمكنك عمل ذلك عن طريق التحقق من صحة validation باستخدام هذه المعادلة : =COUNTIF($A$1:$A$19,A2)=1
-
أنا مش عارفة انزل المرفقات على الجهاز بتاعى
يحيى حسين replied to sahar_saed's topic in منتدى الاكسيل Excel
هل الزيادة ستكون بمعدل ثابت ما بين 6 و 10 ثم 14 و هكذا