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

محمد حجازي

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

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

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

  • Days Won

    2

كل منشورات العضو محمد حجازي

  1. هذا الخيار خاص بتقييم الصيغة عن طريق تتبع الخطوات التي يقوم بها الاكسل لحساب الصيغ المختلفة. كما تعلم فإن عملية حساب الصيغ المختلفة تخضع لبعض الاعتبارات (راجع الرابط التالي) : http://www.c4arab.com/showlesson.php?lesid=2114 كما أن بعض الصيغ تحتاج لاستخدام المعاملات المنطقية المختلفة TRUE و FALSE و التي تحتاج لاعتبارات خاصة يجب فهمها (إن شاء الله سأقوم بشرحها في درس مستقل) ، و كما أن هناك بعض الصيغ التي يصعب فهمها بدون هذه الأداة (صيغ الصفيف) ، وكما أن هناك بعض الأخطاء التي تقف حائراً أمامها و لاتستطيع فهم ماهيتها إلى عن طريق هذه الأداة. فقط قم بالضغط على الخيار Evaluate لتتبع خطوات الحل .
  2. السلام عليكم ... بفرض أن البيانات موجودة على المجال A1:C5 فيمكنك تطبيق الكود التالي : Private RunWhen As Double Public Sub RunCopy() With Workbooks("CopySheet") .Sheets("Sheet1").Copy After:=.Sheets(.Sheets.Count) With .Sheets("Sheet1").Range("A1:C5") .Copy .PasteSpecial Paste:=xlPasteValues End With .Sheets(.Sheets.Count).Range("A1").Select .Sheets("Sheet1").Activate .Sheets(.Sheets.Count).Name = Replace(Time(), ":", "-", 1, -1) End With RunWhen = Now + TimeSerial(0, 0, 5) Application.OnTime RunWhen, "RunCopy", , True End Sub Public Sub StopCopy() On Error Resume Next Application.OnTime RunWhen, "RunCopy", , False RunWhen = 0 End Sub الرجاء التوضيح أكثر. قد يكون ذلك له علاقة بمدى الذاكرة المتوفرة لديك. راجع حدود مصنف الاكسل.
  3. السلام عليكم ... حسب ما فهمت بأنك تريد إنشاء نسخ مماثلة لهذه الأوراق و تجميعها في مصنف واحد . إذا كانت المشكلة كذلك ، فالطريقة بسيطة جداً و تتلخص فيما يلي : افتح المصنف الذي تريد تجميع هذه الأوراق فيه بالإضافة للمصنفات التي تحتوي على الأوراق المطلوب تجميعها . الآن كليك يمين على الورقة المطلوب إنشاء نسخة لها في المصنف الجديد و اختار Move or Copy . حدد الخانة Create a copy ، و اختر المصنف الجديد (الذي تريد تجميع الأوراق فيه) من القائمة To book . الآن حدد الورقة (الموجودة في المصنف الجديد) التي تريد وضع الورقة المنسوخة أمامها من المربع Befour Sheet و اضغط على OK . بالنسبة للصيغ و الروابط مع بقية الأوراق ، فلا تقلق لأنها ستتغير تلقائياً لتتناسب مع الوضع الجديد .
  4. السلام عليكم ... ضع هذا الكود في الـ ThisWorkbook الخاص بملف ملخص السوق: Sub MyRefresh() MyFiles = Array("1010.xls", "1020.xls", "1040.xls") ' files name For Each MyName In MyFiles Me.UpdateLink Name:=Me.Path & "\" & MyName, Type:=xlExcelLinks Next MyName End Sub و إذا كنت بحاجة لمؤقت زمني ، فنحن بالخدمة . Refresh.rar
  5. السلام عليكم ... آسف أخي على التأخر .... و لكن ظروووف العمل. جرب هذا الكود الذي كتبته على عجالة و أعطني ملاحظاتك عليه : Sub MySort() Dim MyValues() As Double Dim MyV As Long Dim UValue As Long Dim MyRange As Range Set MyRange = Application.InputBox(prompt:="حدد المجال", Type:=8) UValue = Application.InputBox(prompt:="حدد الحد الأعلى لهذه الأرقام", Type:=1) ReDim MyValue(0) For Each MyCell In MyRange.Cells MyV = Int(Rnd * UValue) For i = 0 To UBound(MyValue) If MyValue(i) = MyV Then MyV = Int(Rnd * UValue) i = -1 End If Next i MyCell.Value = MyV MyValue(UBound(MyValue)) = MyV ReDim Preserve MyValue(UBound(MyValue) + 1) Next MyCell End Sub على فكرة ، توجد الوظيفة Random Number Generation التي تقوم بنفس المهمة ، وهذه الوظيفة موجودة ضمن الوظائف الإضافية Data Analysis ، و سوف أقوم إن شاء الله بشرحها عما قريب . Sort.zip
  6. السلام عليكم ... انقر على الخيار Options الموجود في القائمة Tools لتظهر لك نافذة . ضمن التبويب View و تحت Window options ألغ تحديد المربع Formulas . بالتوفيق
  7. السلام عليكم ... جرب الصيغة التالية : =TRUNC(A1;0)&":"&INT((A1-TRUNC(A1;0))*60) بالتوفيق
  8. السلام عليكم ... هذا الكود هو أول ما خطر على بالي ، و لكن فيه قصور حاولت تجاهله ، وهو أن المصنف يغلق دون البرنامج ..... و لك حرية الاختيار
  9. السلام عليكم ... آسف أخي على هذا الانقطاع نتيجة ظروف العمل الذي فرضت إيقاعها علي في الآونة الأخيرة ، و أطمنكم بأن هذه الظروف ستنتهي يوم السبت القادم ، و سأعود بعدها للتواجد بشكل مكثف كما تعودتم إن شاء الله ستكون عودة قوية ، حيث توجد بذهني بعض الدروس التي أود طرحها و سأتركها مفاجئة لكم . أخي بالنسبة لدوس الاكسل العام ، راجع الروابط التالية : http://www.officena.net/ib/index.php?showtopic=7914 http://www.officena.net/ib/index.php?showtopic=2713 أما بالنسبة لأكواد الفيجوال : فراجع هذه الدروس للأستاذ محمد طاهر : http://www.officena.net/ib/index.php?showtopic=206 و هذه السلسلة التي سيتابعها إن شاء الله الأخ مصعب هنداوي بعد عودته سالماً من السفر : http://www.officena.net/ib/index.php?showtopic=7987
  10. السلام عليكم ... أعتقد أن ذلك غير فعال بواسطة الدوال .
  11. هذا الخيار خاص بتصنيف البيانات إلى مستويات فرعية. قكرة هذا الخيار بسيطة ، و تتلخص في ابتكار طريقة عرض معينة وذلك بواسطة تصفية هذه البيانات بطريقة تتيح للمستخدم بعض المرونة في التحكم بها. انظر للمثال المرفق : في المثال المرفق بيانات لمبيعات بعض الأصناف موزعة على الأشهر و ذلك على مدى ثلاث سنوات . بفرض أنك لا تريد ظهور تفصيلات المبيعات في كل شهر إلى عند الحاجة (فقط في حال رغبة المستخدم بذلك) و تريد إظهار اجمالي المبيعات خلال هذا الشهر عوضاً عن ذلك . ما عليك في هذه الحالة سوى تحديد البيانات التي تريد التحكم في إخفاءها (البيانات الموجودة بين الترويستين العليا و السفلى) و اختيار الخيار Group الموجود في القائمة Groupe and Outline . اللآن ستلاحظ امكانية إخفاء هذا الجزء عند الحاجة . و هكذا بالنسبة لبقية الأشهر و السنوات . أما بقية الخيارات ، فستجد شرحاً لها على الروابط التالية : http://office.microsoft.com/ar-sa/assistan...2016411025.aspx http://office.microsoft.com/ar-sa/assistan...2020311025.aspx http://office.microsoft.com/ar-sa/assistan...2034981025.aspx ملاحظة : يمكنك إدراج مجاميع فرعية بصورة أكثر يسراً و سهولة عن طريق الخيار Subtotals : http://office.microsoft.com/ar-sa/assistan...2030921025.aspx http://office.microsoft.com/ar-sa/assistan...2009461025.aspx http://office.microsoft.com/ar-sa/assistan...2020771025.aspx Subtotals.rar
  12. السلام عليكم ... يمكنك التعرف على مواصفات إصدار الاكسل الموجود عندك عن طريق البحث عن "حدود و مواصفات الاكسل" في التعليمات (إذا كانت متوفرة عندك باللغة العربية) : http://office.microsoft.com/ar-sa/assistan...1992911025.aspx أما عن أساليب التغلب على ذلك فهي كثيرة ، ومن بينها : http://office.microsoft.com/ar-sa/assistan...2030301025.aspx http://office.microsoft.com/ar-sa/assistan...1992271025.aspx
  13. السلام عليكم ... بفرض أن الجدول موجود على المجال A2:E50 فعندها ما عليك سوى القيام بما يلي : ضع الصيغة التالية في الخلية Q2 : =IF(OR(A2="";E2<>"مسدد");"";1) ضع الصيغة التالية في الخلية R2 : =IF(Q2="";"";COUNT(Q$2:Q2)) ضع الصيغة التالية في الخلية S2 : =IF(ROW()-1>MAX(R$2:R$50);"";LOOKUP(ROW()-1;R$2:R$50;A$2:A$50)) الآن قم بسحب (تعبئة) خلايا النطاق Q2:S2 على كامل النطاق Q2:S50 و تمعن بالنتيجة .
  14. السلام عليكم ... فقط أرفق مثال لأقوم بشرح الطريقة عليه .
  15. السلام عليكم ... لو افترضنا أنك تجيد العمل على VB6 ، فسيصبح التعامل مع الـ VBA أمراً سهلاً للغاية ، ولكنك لن تستطيع استخدام (أو استثمار) كل ما تعرفه عن الفيجوال في الـ VBA (ليس بالضرورة أن يكون كل ما تطبقه في الـ VB6 يعمل بالصورة ذاتها في الـ VBA) . بالنسبة لحالتك ، فإني أنصحك (منعاً من إضاعة و قتك في أمور لا طائل منها) بتعلم الـ VBA مباشرةً من قبل كتاب متخصص ، و ذلك لأنه من المفروض أن الكتاب يحتوي على أساسيات الفيجوال التي ستلزمك في استمار هذه اللغة على تطبيقات الأوفيس.
  16. السلام عليكم ... وهذا أيضاً ملف يتضمن درساً كنت قد بدأت بكتابته في الماضي و حالت الظروف دون إكمالي له . سأقوم بوضعه هنا ليتم الاستفادة من بعض أجزاءه : Function.rar
  17. السلام عليكم ... تم افتتاح المشروع : http://www.officena.net/ib/index.php?showtopic=8616&st=0 بالتوفيق
  18. السلام عليكم ... هذا شرح لدوال قواعد البيانات كنت قد أدرجته سابقاً في المنتدى : http://www.officena.net/ib/index.php?showtopic=8015
  19. السلام عليكم ... وقوفاً عند رغبة الأعضاء سنقوم بافتتاح مشروع لكتاب يشرح الدوال في الاكسل . و لكن من المؤلفون ؟!!!!!!!!!! المؤلفون هم أنتم :( ، و الباب مفتوح لكل عضو ليقدم ما لديه من علم ، و تيقنوا أن كل معلومة _مهما كانت صغيرة_ ستجازون عليها خير الجزاء من قبل الله أكرم الأكرمين . الكتاب سيتضمن إن شاء الله شرح لجميع الدوال الموجودة في الاكسل دون إغفال أي منها ، و بالتالي فلا تستصغروا شرح الدوال البسيطة أو الشائعة الاستخدام. و سيكون هناك (في كل فترة) إصدار متجدد لهذا الكتاب على صورة ملف PDF متضمناً آخر الشروح بالإضافة للشروح السابقة ، وجميعها ممهور بأسماء من أعدها. (y) و سيتم إن شاء الله تعيين مشرفين على هذا المشروع من أعضاء هذا المنتدى ، مهمتهم متابعة المشروع و إخراج النسخة النهائية من كل إصدار . شروط طرح المشاركات : 1. لا يجوز نقل الشروح من أي مرجع بصورة حرفية ، و يجب ذكر المراجع التي اعتمد عليها العضو في الشرح (إن وجدت) . 2. لا ضير من إدراج شرح لدالة قد تم التطرق إليها من قبل. 3. من الممكن دمج الشرح ليتناول أكثر من دالة بشروط وجود ترابط حقيقي بين الدوال المشروحة (كأن يقوم العضو بشرح الدوال VLOOKUP و LOOKUP و HLOOKUP موضحاً الفرق بينها). 4. لا يجوز للشخص إدراج شرح كان قد أدرجه سابقاً في أحد المنتديات أو الدروس أو الدوريات قبل حصوله على موافقة مسبقة من الجهة التي نشرت شرحه مسبقاً . 5. هيكل الشرح (مطروح للمناقشة إلى أن يتم الاعتماد على هيكل محدد). أما بقية الشروط فمتروكة للأعضاء . :pp: تحياتي
  20. جرب الكود التالي : Private Sub Workbook_BeforeClose(Cancel As Boolean) If MsgBox("هل تريد حفظ التعديلات", vbYesNo, "تنبيه") = vbNo Then With Application If Workbooks.Count = 1 Then .DisplayAlerts = False .Quit Else .EnableEvents = False Me.Close SaveChanges:=False End If End With Else Me.Save End If End Sub جرب تبديل : Me. بـ: Workbooks("Book1"). حيث Book1 هو اسم المصنف . لا ، لا يتم الحفظ .
  21. السلام عليكم ... الأخ ramez : طبعاً قم بشرح هذه الدوال ، وذلك لأن أي كتاب يدعي شرح دوال الاكسل و لا يحتوي على الدوال السابقة سيبقى عملاً قاصراً . الأخ bnwaleed31 : بالنسبة لدمج الشروح المتشابهة ، أعتقد أن هذا غير عملي و أقترح بسرد الشروح المختلفة ، ولا ضير من أن يكون هناك أكثر من شرح لدالة واحدة . أما بالنسبة لعدم السماح بالكتابة في موضوع قد تم التطرق له ، فاطمئن يا أخي بأن ذلك لن يحدث إن شاء الله. و سأقوم اليوم إن شاء الله بإدراج موضوع مثبت عن المشروع المقترح.
  22. السلام عليكم ... أعتقد أنه لا يمكن عمل ذلك إلا بكود الـ VBA ، وأعتقد أن الدوال لا تملك المقدرة على تجاوز هذه العقبات.
  23. السلام عليكم ... شكراً للأخ lombardia_77 على التعقيب ، و بالفعل فإن الاكسل أكثر شمولاً من الـ SPSS. قد تكون سرعة الحصول على التقرير ميزة يتمتع بها الـ SPSS (مع العلم بأن الاكسل يستطيع إنشاء نفس التقارير إذا بذل المستخدم قليلاً من الجهد) و لكن عندما يتعلق الأمر بتقارير نوعية و ذات خصوصية معينة فإني أعتقد أن الاكسل يتفوق بجدارة.
×
×
  • اضف...

Important Information