بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
-
Posts
662 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
5
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
مشاركات المكتوبه بواسطه احمد عبد الناصر
-
-
السلام عليكم
اعتقد ان هناك طريقة ابسط من هذه ,لكن هذا ما توصلت اليه
جرب المرفق
تحياتي
- 2
-
السلام عليكم
هذه الصيغة C2<A2>E2 في المعادلة لا يقوم الاكسيل بمعالجتها كما تبدو, فلو استخدمت evaluate formula ستجد الخطوات كالاتي
C2<A2>E2 ستتحوا في اول خطوة كا true>E2 فبذلك فبقية الخطوات ستكون خطأ .
الافضل استخدام and كما ذكرت في ملفك ,المشكلة بس كانت في علامة < معمولة >
جرب المرفق
تحياتي
- 2
-
السلام عليكم
زيادة في الخير
SendKeys "%+"
لكنها طريقة غير دقيقة نوعا ما
تحياتي
-
السلام عليكم
استاذنا مازن
اكواد متقنة جدا
بالفعل استخدام جمل سيكوال مع الاكسيل يعطيه مرونه و بعد جديد سواء بالتعامل مع قواعد بيانات او بتتطبيقها علي الاكسيل نفسه كقاعدة بيانات وفي احيان كثيره تكون جمل سيكوال علي الاكسيل اسرع و منظمة اكثر من استخدام معادلات الاكسيل نفسه او اكواد فاجوال . بالاخص عامل السرعة مع البيانات الكثيرة
شكرا علي الملف و الامثلة الجميلة المتقنة موضوع مميز فعلا .
وكما ذكرت سيادتكم فهو نوعا ما ليس منتشر بين المستخدمين ,هناك امثلة و مواضيع في هذا المنتدي العملاق لهذه الافكار طرحت من قبل ولكنها شبه منسيه وليست معروضه بهذه البساطه و الدقة.
تقبل تحياتي وشكرا جزيلا علي مشاركة هذه الافكار :)
-
السلام عليكم
جرب اضافة هذا السطر في البداية
Application.ScreenUpdating = False
وهذا في النهاية
Application.ScreenUpdating = True
تحياتي
- 1
-
لا اله الا الله .....
انا لله وانا اليه راجعون.
-
السلام عليكم
زيادة في الخير هذا كود كنت كتبته , ليس بروعة كود استاذنا ياسر فهو يحتاج لجدول من الاكسيل و لا يعتمد علي نفسه.
تحياتي
- 3
-
-
ملاحظة : يوجد معادلة مميزة جدا لاستاذنا الخالدي علي هذا الرابط , المطلوب مختلف قليلا لكن المعادلة تستحق الذكر (ترتيب اكثر من شرط بنفس المعادلة)
http://www.officena.net/ib/index.php?showtopic=46663#entry279751
تحياتي
- 1
- 1
-
السلام عليكم
اسعد الله صباحكم
معادلات متقنة جداااا , زادكم الله علما و نفع بكم
زيادة في الخير هذا كود
Sub dahmour() Dim L Application.ScreenUpdating = False L = Sheets("ناجح").Range("b" & Rows.Count).End(xlUp).Row Sheets("الاوائل").Range("eb14:ec" & L) = Sheets("ناجح").Range("b14:c" & L).Value Sheets("الاوائل").Range("ed14:ed" & L) = Sheets("ناجح").Range("e14:e" & L).Value Sheets("الاوائل").Range("ee14:ee" & L) = Sheets("ناجح").Range("bp14:bp" & L).Value Sheets("الاوائل").Range("eb14:ee" & L).Sort key1:=[ee14], order1:=xlDescending, key2:=[ed14], order2:=xlAscending Sheets("الاوائل").Range("f11:i20") = Sheets("الاوائل").Range("eb14:ee23").Value Sheets("الاوائل").Range("eb14:ee" & L).Clear Application.ScreenUpdating = True End Sub
تحياتي
- 4
-
السلام عليكم
استاذ ياسر
معذرة فلم اجرب الحل في ملفك مسبقا , و كما هو متوقع يعمل بكفاءة .
كما تفضل استاذنا محمد حسن فالتاريخ 30/2/1431 لم يأخذ وضعه الصحيح في الترتيب
و السبب و الله اعلم انه لم يعبر من خلال هذا الشرط
If IsDate(Cells(I, "E")) Then
(دالة IsDate لم تتعرف عليه كتاريخ)
صراحة موضوع التواريخ الهجرية مبهم نوعا ما في الاكسيل
تحياتي
- 2
-
السلام عليكم
اريد تطبيقها على أكثر من ورقة عمل داخل الملف كما في المرفقات.
فهل سيكون هناك تضارب أم توجد طريقة معينة لحلها ؟
ارجو مزيد من التوضيح فلم تتضح الصورة
-هل هناك طريقة لمعرفة اي الشيتات يجب ان تأخذ المعادلة رقم السنة منها ؟ وهل هذا ما تقصد؟
تحياتي
- 1
-
السلام عليكم
مزيد من التوضيح رجاءا , هل يتم الارسال عن طريق Outlook ؟؟
ممكن تجربة هذا الكود ان كان كذلك https://msdn.microsoft.com/en-us/library/ff458119(v=office.11).aspx
تحياتي
-
السلام عليكم
اسعد الله اوقاتكم
اعتقد الاكسيل متعرف عليه كتاريخ هجري و لكن عند الفرز يعامله معاملة النص , ليس لي تعامل مع التواريخ الهجرية في الاكسيل صراحة .
جرب المرفق
-تاريخ معدل1 لان بعض التواريخ فيها مسافة كهذه " 11/10/1432" .
-تاريخ معدل2 ليغير اتجاه التاريخ (او النص حسب رؤية اكسيل) , و هذا الذي سوف ترتب علي حسبه وهو العمود i .
-هذه الطريقة تنفع ما دامت التواريخ بنفس عدد الخانات كما بملفك المرفق مثلا "11/09/1431" و ليس "11/9/1431"
تحياتي
-
- 1
-
السلام عليكم
جرب هذه
Private Sub UserForm_Initialize() With ComboBox1 .ColumnCount = 2 .ColumnWidths = "100;100" .ColumnHeads = True endrow = Sheets("list").Range("A1").End(xlDown).Row '.AddItem Sheets("list").Range("A" & endrow, ("B1")) Data = "=list!a2:b" & endrow .RowSource = Data End With End Sub
تحياتي
-
السلام عليكم
استاذنا ياسر
-معذرة فلم اشاهد الكود بالمشاركة 5 عند اضافة مشاركتي بالفعل هو يفي بالغرض و زيادة وسريع جدا كالمتوقع يكاد يكون "لحظي" .
-جربت الكود في الملف في المشاركة رقم 12 فلم يكن تعطيل الحساب موجود وكان كود الترحيل بطيء جداااا و عند اضافة كودك عليه من المشاركة 5 يعمل سريع جدا لحظي , لكن الملف بدون تشغيل اكواد او اي شيء يحتاج و قت طويل لاعادة عمليات الحساب فيه (اكيد في عدد كبير من المعادلات فيه) ,لكن الكود سريع فيه .
تحياتي
- 1
-
السلام عليكم
جرب اضافة هذا السطر في بداية الكود
Application.Calculation = xlCalculationManual
و هذا في نهايته
Application.Calculation = xlCalculationAutomatic
ليعطل عملية الحساب في الاكسل فترة تنفيذ الكود , لست متأكدان كان هذا يفي بالغرض .
تحياتي
-
السلام عليكم
مظنش انها مرتبطة بحاجة ال a,b,c دول متغيرات الدالة بالحظ شبه اسماء الاعمدة :]
جرب علي خلايا مختلفة ان شاء الله تشتغل معاك
تحياتي
-
السلام عليكم
-هناك قيم تحتاج round مثل القيمة 89.5% في الخلية b2
-هناك كلمات بها مسافات زيادة تحتاج لازلة هذه المسافات هكذا " منتظمة" تصبح "منتظمة"
لست متأكد من اني فهمت الجزء الثاني من هذه الجملة
----
لو بقى الفرق بين المدة المنقضية والمنجز اقل من او يساوي 20 % او المنجز يتخطي المدة المنقضية اذا يتم التحويل الى منتظمه
----
جرب المرفق
تحياتي
-
السلام عليكم
اسعد الله اوقاتكم
الاستاذ المخضرم الاخ العزيز ياسر
شكرا لك علي المعلومات والشروحات القيمة , الف مبروك علي الترقية -زادك الله علما و نفع بك و اعلى نزلك في جنات النعيم .
تقبل تحياتي
-
السلام عليكم
جرب هذه
Private Sub Workbook_BeforeClose(Cancel As Boolean) If Date >= #1/26/2014# And Time >= #8:00:00 AM# Then If Application.UserName = "AHMED.MOHAMED" Or Application.UserName = "MOHAMED.AHMED" Then ActiveWorkbook.SaveCopyAs ("D:\tarek_report.xls") End If End If End Sub
تحياتي
-
السلام عليم
اسعد الله صباحكم
الاخ و الاستاذ طلعت الف مبروك علي الترقية :]
زادك الله علما و اعلى نزلك في جنات النعيم
الشكر موصول لاستاذ حمادة (ابو سما) و الادارة
تقبل تحياتي
-
السلام عليكم
جرب هذه ......
Dim x Private Sub Worksheet_Change(ByVal Target As Range) If Target.Column = 7 Or Target.Column = 9 Then If Target.Cells.Count = 1 Then y = "" y = Target.Value If x = y Then GoTo 1 ''''''''''''''''''''''''''' Application.ScreenUpdating = False r = Application.WorksheetFunction.Match(x, Sheets("2").Range("c:c"), 0) Sheets("2").Cells(r, 4).FormulaR1C1 = "=SUMIF(ÇáÎÒíäÉ!C7,RC[-1],ÇáÎÒíäÉ!C6)" Sheets("2").Cells(r, 4) = Sheets("2").Cells(r, 4).Value Sheets("2").Cells(r, 5).FormulaR1C1 = "=SUMIF(ÇáÎÒíäÉ!C9,RC[-2],ÇáÎÒíäÉ!C8)" Sheets("2").Cells(r, 5) = Sheets("2").Cells(r, 5).Value '+++++ r = Application.WorksheetFunction.Match(y, Sheets("2").Range("c:c"), 0) Sheets("2").Cells(r, 4).FormulaR1C1 = "=SUMIF(ÇáÎÒíäÉ!C7,RC[-1],ÇáÎÒíäÉ!C6)" Sheets("2").Cells(r, 4) = Sheets("2").Cells(r, 4).Value Sheets("2").Cells(r, 5).FormulaR1C1 = "=SUMIF(ÇáÎÒíäÉ!C9,RC[-2],ÇáÎÒíäÉ!C8)" Sheets("2").Cells(r, 5) = Sheets("2").Cells(r, 5).Value Application.ScreenUpdating = True ''''''''''''''''''''''''''' End If End If 1 End Sub Private Sub Worksheet_SelectionChange(ByVal Target As Range) If Target.Column = 7 Or Target.Column = 9 Then If Target.Cells.Count = 1 Then x = "" x = Target.Value End If End If End Sub
--لست متأكد من دقة هذه الطريقة صراحة :]
ملحوظة: اعتقد انه من الممكن استخدام Application.Evaluate Method لتكون المعادلات اسرع و الله اعلم
تحياتي
EXCEL EQUATION
في منتدى الاكسيل Excel
قام بنشر
السلام عليكم
زيادة في الخير
-ملاحظة معادلة array تحتاج لضغط ctrl+alt+enter
تحياتي
EXCEL EQUATION+.rar