-
Posts
4,444 -
تاريخ الانضمام
-
Days Won
192
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
كل منشورات العضو أ / محمد صالح
-
لا تتعب نفسك الاكسل ضعيف في الحماية اقل من الأكسس
-
عليكم السلام ورحمة الله وبركاته إذا كان الهدف هو مجرد ترتيب بالمعادلات قيمكنك استعمال هذه المعادلة في الخلية F4 للحصول على نفس المجموعة مرتبة =INDEX($A$4:$C$11,MATCH(ROW()-3,$A$4:$A$11,0),COLUMN()-5) مع ملاحظة بداية ونهاية نطاق البحث A4:C11 وعدد الصفوف الفارغة قبل مكان أول نتيجة (F4) == 3 وخلايا الفهرس غير المرتب الذي يتم التريب عليه A4:A11 وعدد الأعمدة الفارغة قبل مكان أول نتيجة == 5 مع سجب المعادلة لأسفل ولليمين بالتوفيق
-
جرب استعمال هذه المعادلة في الخلية G6 =IF(B6="","",IF(DATEDIF(D6,E6,"md")>=30,IF(DATEDIF(D6,E6,"ym")+1=12,0,DATEDIF(D6,E6,"ym")+1),DATEDIF(D6,E6,"ym"))) وهذه في الخلية F6 =IF(B6="","",IF(DATEDIF(D6,E6,"ym")+1=12,1,0))+DATEDIF(D6,E6,"y") بالتوفيق
-
ربما يكون سبب بطء الكود (من وجهة نظرك) شرط عدم قراغ خلية العمود b في نفس الصف وعدم تحديد النطاق الفعلي (بدون زيادة في الصفوف أو الأعمدة) بالتوفيق
-
يمكنك استعمال ميزة text to columns الموجودة في تبويب data بالتوفيق
-
الكود السابق يملأ الخلايا الفارغة كلها بدون شروط لذا يلزم إضافة شرط يمكنك استعمال هذا الاجراء تم إضافة شرط أن تكون خلية العمود B في نفس الصف غير فارغة Sub masFillBlanks() Dim rng As Range For Each rng In Range("H11:AT75") If Range("b" & rng.Row) <> "" And IsEmpty(rng) Then rng.Value = "-" Next MsgBox "Done by mr-mas.com" End Sub وهذا نفس الاجراء بطريقة أخرى Sub masFillBlanks2() Dim arr, r As Long, c As Long arr = Range("H11:AT75").Value For r = LBound(arr, 1) To UBound(arr, 1) If Range("b" & r + 10) <> "" Then For c = LBound(arr, 2) To UBound(arr, 2) If IsEmpty(arr(r, c)) Then Cells(r + 10, c + 7) = "-" Next c End If Next r MsgBox "Done by mr-mas.com" End Sub وأنصح بعدم وجود صفوف أو أعمدة زيادة مثل ما بعد الصف 47 وlما بعد العمود AN بالتوفيق
-
يفضل إرفاق ملفك وتوضيح المطلوب بمنتهى التفصيل مع ذكر النتيجة النهائية المطلوبة
-
مادمت لم تعرف كيف تتواصل مع المبرمج يمكنك الإستفادة من هذه الموضوعات المفتوحة المصدر https://www.officena.net/ib/search/?q=date picker&quick=1&type=forums_topic&nodes=135&search_and_or=and بالتوفيق
-
حسب فهمي للمطلوب جرب هذه المعادلة =IF(A1>10,33.5+(A1-10)*4.25,A1*3.35) وتعني إذا كان قيمة A1 اكبر من 10 فيتم إضافة 33.5 وهي ناتج ضرب العشرة ايام في 3.35 زائد باقي الأيام فوق العشرة في 4.25 بالتوفيق
-
إدراج صورة عن طريق كتابة رقمها
أ / محمد صالح replied to أبو عبد الله _'s topic in منتدى الاكسيل Excel
المنتدى به كنوز رائعة تحتاج فقط من يبحث عنها https://www.officena.net/ib/search/?q=صورة الموظف&quick=1&type=forums_topic&nodes=135&search_and_or=and بالتوفيق -
ترحيل ارقام من شيت الى شيت على اساس رقم المستند
أ / محمد صالح replied to alihgrvdad123's topic in منتدى الاكسيل Excel
أخي الكريم صاحب الموضوع اول خطوة لتعديل الكود فهمه وفهم متغيراته والكود القديم يقوم بنقل قيمة العمود J إلى العمود 19 بعد العمود الأول في شيت البيانات والمطلوب إضافة نفس الكود عند تعديل العمود G ويتم نقله إلى العمود 16 بعد العمود الأول في شيت البيانات لذلك يصبح الكود بعد التعديل Private Sub Worksheet_Change(ByVal Target As Range) On Error Resume Next Dim ws As Worksheet Set ws = Sheets("البيانات") Dim c, x Application.ScreenUpdating = False If Not Intersect(Target, Range("g8:g1000")) Is Nothing Then c = Target.Offset(, -9) x = Application.Match(c, ws.Columns(1), 0) ws.Cells(x, 1).Offset(, 16) = Target Ebd If If Not Intersect(Target, Range("j8:j1000")) Is Nothing Then c = Target.Offset(, -9) x = Application.Match(c, ws.Columns(1), 0) ws.Cells(x, 1).Offset(, 19) = Target End If Application.ScreenUpdating = True End Sub لاحظ تم تكرار سطور الشرط للعمودين g و j مع تغيير رقم العمود المرحل إليه مرة 19 ومرة 16 بالتوفيق -
أخي الكريم يوجد في ملفك مجموعات من الأرقام غير المتسلسلة لأنه بين كل رقم والذي يليه مرة 100 ومرة 200 ومرة 500 وهكذا كل مجموعة 11 عمود في 50 صف والعمود الأخير غير كامل وبين كل مجموعة والثانية 7 اعمدة فارغة هذا وصف دقيق للموجود بالملف فيا ريت تضيف شيت جديد في ملفك به الصورة النهائية المطلوب الوصول إليها مع وصف دقيق وبمنتهى التفاصيل عن كيف وصلت لهذه الصورة المطلوبة وساعتها يمكن بإذن الله تحويل ما قمت به إلى معادلات أو أكواد للوصول للصورة النهائية المطلوبة بالتوفيق
-
معادلة او كود لحساب قيمة خصم تامين المؤسسة للعقود
أ / محمد صالح replied to yasse.w.2010's topic in منتدى الاكسيل Excel
كيف يتم حسابها في الواقع؟ وساعتها يمكن تحويلها لمعادلة -
بعد إذن أخي محي الدين جرب تغيير الاجراء إلى هذا الكود هذا باستعمال الاسم البرمجي للشيت ودالة cells Sub test() Dim a, col As Long a = Range(Worksheet____37.Cells(10, 8), Worksheet____37.Cells(39, 8)).Value col = Application.Match(Worksheet____37.Cells(9, 8), Worksheet____60.Range("a9:m9"), 0) Worksheet____60.Cells(10, col).Resize(30) = a MsgBox "Done by mr-mas.com" End Sub وهذا نفس الاجراء باسم الشيت والنطاق Sub mrmas() Dim a, col As Long a = Sheets("طباعة حافظة التقارير").Range("h10:h39").Value col = Application.Match(Sheets("طباعة حافظة التقارير").Range("h9"), Sheets("ارشيف التقارير").Range("a9:m9"), 0) Sheets("ارشيف التقارير").Cells(10, col).Resize(30) = a MsgBox "Done by mr-mas.com" End Sub بالتوفيق
-
وهذا رابط للبحث Showing results for 'القروش الجنيهات' in content posted in منتدى الاكسيل Excel . - أوفيسنا (officena.net) بالتوفيق
-
لقد عرضت لك الحل كاملا نظرا لسرية البيانات وخصوصا بيانات الدخول (اسم المستخدم وكلمة المرور) على موقع رسمي كهذا
-
مشكله في خلايا الاكسيل المعادلة لا تراها
أ / محمد صالح replied to yasse.w.2010's topic in منتدى الاكسيل Excel
يرجع ذلك لأن الأرقام التي في الخلايا منسقة ك نص ولذلك تجد ظهور مثلث أصفر يخبر بهذا الخطأ the number in this cell is formatted as text والحل تحديد جميع الخلايا ثم الضغط على المثلث الأصفر واختيار convert to number بالتوفيق -
الكود لا يضر الموقع ولا يظهر عندهم الكود يقوم بما يقوم به المستخدم ولكن بصورة آلية تحتاج قبل البدء معرفة ID حقل اسم المستخدم وكذلك كلمة المرور وكذلك زر الدخول وبعدها ID لكل حقل سيتم تعبئته من الشيت وكل زر سيتم الضغط عليه لمعرفة ID لعنصر نضغط بزر الفارة الأيمن على العنصر في المتصفح ونختار inspect element وبعدها نستخدم كود انشاء نسخة من كائن متصفح انترنت اكسبلورر بمثل هذا الكود Dim IE As Object, site as String Set IE = CreateObject("InternetExplorer.Application") site = "https://www.example.com/" With IE .Visible = True .navigate site Do Until Not IE.Busy And IE.readyState = 4 DoEvents Loop End With IE.Document.getElementById("username").Value = range("aa1").value IE.Document.getElementById("password").Value = range("ab1").value IE.Document.getElementById("login_go").Click Do Until Not IE.Busy And IE.readyState = 4 DoEvents Loop وهكذا في كتابة قيم الحقول من الشيت نستعمل حلقة تكرارية مثل for - next وهكذا الضغط على اي زر لحفظ البيانات مثلا بالتوفيق
-
هل الموقع يفتح بصورة طبيعية في متصفح انترنت اكسبلورر؟ إذا كانت الإجابة بنعم فمن السهل إنجاز المهمة بالكود وإذا كان الموقع لا يمكن فتحه ويتطب متصفحا حديثا مثل جوجل كروم أو فايرفوكس فالأمر أكثر صعوبة
-
مطلوب سحب الاجازات وتجميها طبقا للشهر
أ / محمد صالح replied to alaaaltwel's topic in منتدى الاكسيل Excel
الحمد لله الذي وفقنا جميعا لهذا -
برجاء التعديل على كود البحث التالي
أ / محمد صالح replied to حاتم عيسى's topic in منتدى الاكسيل Excel
جميعا بإذن الله -
مطلوب سحب الاجازات وتجميها طبقا للشهر
أ / محمد صالح replied to alaaaltwel's topic in منتدى الاكسيل Excel
كل عام وأنتم جميعا بكل خير يمكنك استعمال هذه المعادلة في الخلية C2 مع سحب المعادلة يسارا ثم أسفل =SUMIFS('Data '!$E:$E,'Data '!$A:$A,$A2,'Data '!$C:$C,">="&C$1,'Data '!$C:$C,"<="&EOMONTH(C$1,0)) مع ضرورة حذف المسافة في نهاية اسم الشيت data حتى لا تتسبب في مشكلات بعد ذلك بالتوفيق -
حساب عدد ايام الحضور والغياب فى شيت
أ / محمد صالح replied to Prince Mo3taz's topic in منتدى الاكسيل Excel
عليكم اسلام ورحمة الله وبركاته يمكنك استعمال دالة العد بشروط countifs هذه المعادلة في Y2 لعد ايام الحضور =COUNTIFS(B:B,AA3,C:C,Z3,F:F,"حضور") وهذه في X2 لعد ايام الغياب =COUNTIFS(B:B,AA3,C:C,Z3,F:F,"غياب") مع سحب المعادلة لأسفل بالتوفيق- 1 reply
-
- 1
-
برجاء التعديل على كود البحث التالي
أ / محمد صالح replied to حاتم عيسى's topic in منتدى الاكسيل Excel
يمكنك التحكم في النطاق بدالة iif بصورة طبيعية بتكرار الشرط في جزء عدم التحقق For Each c In IIf(Me.OptionButton4, x.Range("A9:A" & ss), IIf(Me.OptionButton5, x.Range("B9:B" & ss), x.Range("C9:C" & ss))) بالتوفيق