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

نجوم المشاركات

  1. kanory

    kanory

    الخبراء


    • نقاط

      17

    • Posts

      2331


  2. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      9

    • Posts

      9998


  3. سليم حاصبيا

    سليم حاصبيا

    أوفيسنا


    • نقاط

      7

    • Posts

      8723


  4. أبوبسمله

    أبوبسمله

    الخبراء


    • نقاط

      6

    • Posts

      3463


Popular Content

Showing content with the highest reputation on 08/29/20 in مشاركات

  1. جرب هذا الكود Option Explicit Sub Unmerg_cells() If ActiveSheet.Name <> "ورقة1" Then Exit Sub Dim lr#, i# Dim My_rg As Range, x, y, z, n Dim My_min lr = Cells(Rows.Count, "D").End(3).Row For i = 2 To lr If Cells(i, 2).MergeCells Then x = Cells(i, 1) y = Cells(i, 2) z = Cells(i, 3) n = Cells(i, 2).MergeArea.Rows.Count Cells(i, 1).UnMerge Cells(i, 1).Resize(n) = x Cells(i, 2).UnMerge Cells(i, 2).Resize(n) = y Cells(i, 3).UnMerge Cells(i, 3).Resize(n) = z My_min = Application.Min(Range("d" & i).Resize(n)) Range("d" & i).Resize(n) = Format(My_min, "d/m/yyy") i = i + n - 1 End If Next End Sub الملف مرفق Gorh.xlsm
    4 points
  2. شرح البحث في الاكسل باستخدام دالة Index + mach للشرح شاهد الفديو شرح البحث في الاكسل لتحميل ملف العمل من هنــــا برجاء تغيير اسم الظهور الى اسم عربى له معنى بدلاً من abdo2015egy@gmail.com
    2 points
  3. ممكن تختصرها الى : dl = Nz(DMax("idym", "tblNum", "(year([ddate]) & month([ddate]))='" & Format(Me.dDate, "yyyym") & "'"), 0) rd = int(Right([dl],3)) + 1 Me.IdYM = Format(Me.dDate, "yyyy/mm") & "/" & Format(rd, "000") ولكن تذكر ، انك تأخذ التاريخ من الحقل الآخر ، وليس من نفس الحقل الذي فيه الرقم. جعفر
    2 points
  4. شكرا لك اخي محمد ، ولكن الاستاذ عبدالله يقول استعمل DMax ولا تستعمل DCount ، للسبب رقم 2 في ملاحظتي اعلاه 🙂 جعفر
    2 points
  5. هنا ملاحظة من الاستاذ المحاسب عبدالله قدور ، لما استعملت Dcount 🙂 جعفر
    2 points
  6. السلام عليكم اخى @محمد سلامة مشاركه مع الاخ طاهر جزاه الله خيرا اتفضل استاذ محمد هذا المثال حاجه على قدى لعله يفى بالغرض وضعت الكود فى حدث بعد التحديث للتاريخ بامكانك وضعه فالحدث المناسب لك sYM = DCount("dDate", "tblNum", "(year([ddate]) & month([ddate]))='" & Format(Me.dDate, "yyyym") & "'") + 1 Me.IdYM = Format(Me.dDate, "yyyy/mm") & "/" & Format(sYM, "000") بالتوفيق New.accdb
    2 points
  7. فضلا غير افضل اجابة للاستاذ . @jjafferr لانه اول من طرح اجابة صحيحة .... بارك الله فيك
    2 points
  8. السلام عليكم اخوتي الاعزاء اقدم لكم قاعدة بيانات مخزن بسيط جدا لمتابعة حركة الصادر والوارد وتحديث الموجود تلقائيا بعد كل حركة اتمنى ان تعطوني رايكم الفني مع التقدير برنامج مخزن بسيط.rar
    2 points
  9. الحقيقة موضوع العهد والمستودعات امر غامض بالنسبة لي وبالتالي مشاركتي استفسار الاساسي تشير فيه الى الرصيد الافتتاحي او الكمية المتوفرة قبل الحركة سواء كانت وارد او صادر السؤال الثاني الصادر يشير الى الكمية المصروفة من المستوع والوارد هو الكمية المضافة او الداخلة للمستوع اذا كان هذا صحيح فان المعادلة لديك في فورم الموجود تحتاج الى مراجعة مثلا مكيف الرصيد او الاساسي 9 الصادر 3 الوارد 0 الموجود 12 اي انك قمت بزيادة الكمية المصروفة الى الرصيد ويفترض يكون الموجود 6 لكون المتبقي يكون بالزيادة للوارد وبالناقص للصادر اذا كان فهمي غير صحيح فاعتذر مقدما
    2 points
  10. الشكر لله ثم لاخواننا واساتذتنا جزاهم الله خيرا 💐 بالتوفيق اخى محمد
    1 point
  11. جزاكم الله خيرا .. جزيل شكري وامتناني بارك الله فيكم استاذ احمد - استاذ جعفر تمام التمام
    1 point
  12. جزاك الله خيرا معلمنا العزيز @jjafferr 💐
    1 point
  13. اخى الفاضل @محمد سلامة جرب التعديل التالى ووافنى بالنتيجه وارجو الاطلاع من اخى ومعلمنا العزيز @jjafferr dl = Nz(DMax("idym", "tblNum", "(year([ddate]) & month([ddate]))='" & Format(Me.dDate, "yyyym") & "'"), 0) rd = Right([dl], Len([dl]) - InStrRev([dl], "/")) + 1 Me.IdYM = Format(Me.dDate, "yyyy/mm") & "/" & Format(rd, "000") New - 1.accdb
    1 point
  14. 1- في هذا القسم من الكود تم استعمال حاصية الـــ Dictionery التي لا تسمح لتكرار البيانات داخلها الـــ Dictionery يضيف الى بياناته نوعين من العناصر Key و Items الـــ Key لا يمكن ان يتكرر 2- انا أقول للـ Dictionery في هذا القسم اذا كانت الحلية ( Cells(X, 1 غيرموجودة عتدك خذها لتمثل دور الـــ Key والخلية التي الى جانبها ( Cells(X, 2) تمثل الـــ__ ( Item) و اذا كانت موجودة Key اجمع الى ما يتبعها ( Cells(X, 2) ليمثل المجموع دور Items (في هذه الحالة وجدنا Items جديدة لهذا الــ Key الذي هو ( Cells(X, 1 على كل حال يمكن استبدال هذه الجزئية من الكود بهذه For X = 3 To a - 2 Dic(Cells(X, 1).Value) = _ Dic(Cells(X, 1).Value) + _ IIf(IsNumeric(Cells(X, 2).Value), Cells(X, 2).Value, 0) Next
    1 point
  15. جرب هذه ايضا ...... Intl: "00966" & Right([mopaul];9) طبعا mopaul هو الحقل الموجود فيه ارقام الجوال
    1 point
  16. Mobily: Replace([الجوال];0;966;1;1) ضع هذا في استعلام : طبعا الجوال هو الحقل الموجود فيه ارقام الجوالات بهذه الصورة .....
    1 point
  17. نعم ..... نفذ احدى الطريقتين التي ذكرتها لك ....
    1 point
  18. ممكن تعمل تحديث او تضيف حقل اخر يعدل الرقم بالمطلوب
    1 point
  19. بارك الله فيك اخي جعفر ليس فضلا ولا احسان ... بل انت صاحب الفضل بعد الله عز وجل ..... فعلا البرامج مثل التي طرحها الاساتذة @jjafferr و @أبو إبراهيم الغامدي و @د.كاف يار فعلا تستحق التجربة لانها امثلة كل واحدة منها تحمل فكرة جميلة وجديرة بدراستها والاستفادة منها ... بارك الله في جهود الجميع ....
    1 point
  20. السلام عليكم يرجى ضغط CTR+F5 لتحديث الصفحات المخزنة و ان لم يكن افراغ الكاش من المتصفح
    1 point
  21. هولولولولولو وي (انا ازغرد ) الحمدلله 🙂 بس طلب الآن ، بما انك عرفت المشكلة ، فرجاء تجرب بقية البرامج ، لأننا جميعا بذلنا الوقت والجهد ، ونستحق ان نعرف اذا برامجنا اشتغلت (اعتبرها ضريبة وعليك دفعها 🙂 ) جميعنا جربنا برامجنا بالمرفقات اللي وضعتها انت ، واشتغلت ، فالظاهر انك تتكلم عن ملف آخر لم ترفقه !! وشكرا اخوي kanory على إحسانك وتفضلك 🙂 جعفر
    1 point
  22. الماكرو يتعاطى مع الخلايا المدمجة في اول ثلاثة اعمدة فقط الخلابا العادية ليس لها شأن
    1 point
  23. تفضل اخي العزيز ارجو ان يكون طلبك TTT (2).rar
    1 point
  24. نعم.. بقي عليك أن تترك استخدام ملف أكسس الذي حصلة به المشكلة وتسخدم نسخة جديدة من الملف المظغوط.. وإن شاء الله تعمل
    1 point
  25. تستخدم بطريقة عادية زي ما قلت لحضرتك المشكلة أنها لا تظهر في قائمة الدوال أو الإكمال التلقائي في شريط الصيغة ويوجد مثال بالإكسل في الرابط المذكور به الطريقة على تاريخ اليوم أو تاريخ آخر محدد
    1 point
  26. استبدل الكود الموجود في زر الاستيراد بهذا الكود وجرب ..... Dim TextLine Dim x() As String Dim TESTFILE As String Dim rst As DAO.Recordset Set rst = CurrentDb.OpenRecordset("Select * From Mobaile") 'TESTFILE = Application.CurrentProject.Path & "\Template.csv" TESTFILE = Me.txtPath Open TESTFILE For Input As #1 ' Open file. Do While Not EOF(1) ' Loop until end of file. Line Input #1, TextLine ' Read line into variable. 'Debug.Print TextLine ' Print to the Immediate window. x = Split(TextLine, ",") If x(0) <> "IdentificationID" Then rst.AddNew rst!IdentificationID = x(0) rst!FullName = x(1) rst!MobileNumber = x(2) rst!ClassName = x(3) rst.Update End If Loop Close #1 ' Close file. rst.Close: Set rst = Nothing
    1 point
  27. شكرا جزيلا للتنبيه قمت بجمع الصادر بدل طرحه تم التعديل
    1 point
  28. جربت المرفق يعطي هذه الاخطاء مع العلم جرب الكود السابق كان يعمل بشكل اكثر من ممتاز
    1 point
  29. مين قال ما جربنا بل عكس طريقة جديدة بالنسبة لي ..... بارك الله فيك أخي ابا ابراهيم
    1 point
  30. للاسف لم افهم ماذا تريد ولكن اطلع على الموضوع التالى لاخى واستاذى العزيز جعفر جزاه الله خيرا لعلك تجد به ما تريد بالتوفيق
    1 point
  31. 1 point
  32. ملف الاكسل متغير ليس الملف الذي عمل عليه الاستاذين جعفر وابو ابراهيم ...... انظر هذا التنسيق الي اشتغلوا عليه ..... انظر
    1 point
  33. ارفق الملف الذي تعمل عليه الان ... عشان ما تصير تداخل في الملفات
    1 point
  34. دالة datedif موجودة في جميع إصدارات إكسل ولكنها غير موجودة في قائمة الدوال ولا تظهر في الإكمال التلقائي نظرا لاختلاف عالمي في طريقة حساب الفرق بين تاريخين ويمكنك الاستفادة من هذا الرابط https://www.mr-mas.com/p/datedif.html لخساب الفرق بين تاريخين أونلاين وفي برنامج ميكروسوفت إكسيل
    1 point
  35. جرب هذا الكود Option Explicit Sub Get_aLL() Dim Rg_A As Range Dim Rg_D As Range, Rg_G As Range Dim a%, d%, g%, X% Dim St1$, St2$ Dim Dic As Object Range("k3").CurrentRegion.ClearContents Set Rg_A = Range("A3", Range("A2").End(4)) Set Rg_D = Range("D3", Range("D2").End(4)) Set Rg_G = Range("G3", Range("G2").End(4)) a = Rg_A.Rows.Count: d = Rg_D.Rows.Count g = Rg_A.Rows.Count St1 = "All Products": St2 = "All Volume" Set Dic = CreateObject("Scripting.dictionary") For X = 3 To a - 2 If Not Dic.exists(Cells(X, 1).Value) Then Dic(Cells(X, 1).Value) = Cells(X, 2) Else Dic(Cells(X, 1).Value) = Dic(Cells(X, 1).Value) + Cells(X, 2) End If Next '+++++++++++++++++++++++++ For X = 3 To d - 2 If Not Dic.exists(Cells(X, 1).Value) Then Dic(Cells(X, 4).Value) = Cells(X, 5) Else Dic(Cells(X, 4).Value) = Dic(Cells(X, 4).Value) + Cells(X, 5) End If Next '+++++++++++++++++++++++++ For X = 3 To g - 2 If Not Dic.exists(Cells(X, 7).Value) Then Dic(Cells(X, 7).Value) = Cells(X, 8) Else Dic(Cells(X, 7).Value) = Dic(Cells(X, 7).Value) + Cells(X, 8) End If Next '++++++++++++++++++++ Range("k3").Resize(Dic.Count) = _ Application.Transpose(Dic.keys) Range("L3").Resize(Dic.Count) = _ Application.Transpose(Dic.Items) Range("k2") = St1: Range("l2") = St2 Range("k2").CurrentRegion.Sort Key1:=Range("L2") _ , order1:=2, Header:=1 End Sub الملف مرفق Master.xlsm
    1 point
  36. الموقع ليس به عطل الموضوع كان فقط انتهاء تاريخ صلاحية شهادة الامان SSL وهي اختصار لـ Secure Socket Layer وهي خاصة ببروتوكل الاتصال الامن المشفر https يمكن تجاوز الشهادة بمتصفح ايدج ومتصفح Brave من خلال اضافة استثناء ولكن الامر مزعج وغير عملي اما متصفح فايرفوكس متصفحي الاساسي فلا يسمح باي استثناء بشكل شرعي وانما يمكن اضافة استثناء بطريقة معقدة مشابهه لاستخدام البينج لتجاوز المواقع المحجوبة ولكن الامر يتطلب تكرار العملية عند كل انتقال وهو امر مزعج وغير عملي اما متصفح كروم فلا علم لدي لكوني لا استخدمه ssl لها ثلاث اقسام التحقق الموسع وهي تظهر مكان الاستظافة ومعلومات المؤسسة على شريط العنوان شهادة التحقق لاثبات الملكية وهي مفيدة للمتاجر الالكترونية وتعطي المتسوق ثقة في الموقع وانه ليس موقع تصيد شهادة التحقق من الدوماين وهي الاكثر استخدام وهذا النوع يعطي مصداقية مقبولة للمتصفحين مناسبة للمنتديات حاليا الموقع يعمل بشكل جيد حيث ان الشهادة الحالية من تاريخ 25/8/2020 وتنتهي بتاريخ 26/8/2021
    1 point
  37. ممكن تستفيد من المرففترقيم حسب الشهر.mdb وتطوره فيه بعض الاخطاء ممكن تصححها وترسلها نستفيذمنها ترقيم حسب الشهر.mdb الترقيم حسب الشهر والسنة.rar
    1 point
  38. تفضل التعديل اخي الكريم 22.accdb
    1 point
  39. وعليكم السلام .. تم تحرير عمود الكمية Y وفك تقييده , كما تم دمج المعادلات طبقاً للمطلوب بهذه المعادلة بعمود القيمة =IFERROR(IF($U5="نقلة",$Z5,IF(AND(Y5>=SUMIF(data!$A$18:$A$21,$AA5,data!$B$18:$B$21),$U5="طن"),($Y5*$Z5),$Z5*SUMIF(data!$A$18:$A$21,$AA5,data!$B$18:$B$21))),"") 12346.xlsm
    1 point
  40. السلام عليكم ورحمة الله وبركاته الاستعلام يُعتبر العمود الفقري لقواعد البيانات ، وكلما زادت معرفتنا به ، كلما يصبح البرنامج افضل واسرع 🙂 البحث/التصفية في الاستعلام من الطرق المهمة ، ولكن وللأسف الشديد ، ارى الكثير من المبرمجين لا يعرفون الطريقة الصحيحة في عملها ، فالطريقة الغير صحيحة قد تعطيك النتائج ولكن على حساب وقت تنفيذ الاستعلام 😞 الامثله هنا تقوم على انه يوجد لدينا نموذج اسمه frm_Main ، وبه حقل الاسم fName ، وحقل التاريخ:من Date_From ، وحقل التاريخ:الى Date_To ، والحقول في الاستعلام ، حقل الاسم fName ، وحقل التاريخ DateX . 1. اذا اردنا البحث عن اسم كامل (وليس جزء من اسم) ، فيجب ان يكون المعيار في الاستعلام: [forms]![frm_Main]![fName] 2. واذا كان حقل الاسم فارغا في النموذج ، ونريد ان نرى جميع الاسماء ، فالمعيار يصبح: iif(len([forms]![frm_Main]![fName] & '')=0,[fName],[forms]![frm_Main]![fName]) والشرح للتأكد بأن الحقل فارغ في النموذج، بدل ان نكتب IsNull([forms]![frm_Main]![fName]) or [forms]![frm_Main]![fName]=0 فإننا نختصر هذين الشرطين بشرط واحد len([forms]![frm_Main]![fName] & '')=0 iif(كان الحقل فارغ في النموذج,[fName] اعطنا جميع بيانات الحقل,[forms]![frm_Main]![fName]واذا كان الحقل به قيمة فاستعمل هذه القيمة) . 3. اذا اردنا البحث عن جزء من الاسم Like IIf(Len([forms]![frm_Main]![fName] & '')=0,"*","*" & [forms]![frm_Main]![fName] & "*") والشرح IIf(Len([forms]![frm_Main]![fName] & '')=0 نعم Like "*" لا Like "*" & [forms]![frm_Main]![fName] & "*") . 4. اذا اردنا البحث بين تاريخين بدون سجلات التاريخ الفارغة Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) والشرح Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) مع سجلات التاريخ الفارغة Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) Or [DateX] Is Null والشرح Between (IIf(Len([Forms]![frm_main]![Date_From] & '')=0,#01-Jan-1900#,[Forms]![frm_main]![Date_From])) And (IIf(Len([Forms]![frm_main]![Date_To] & '')=0,#01-Jan-2900#,[Forms]![frm_main]![Date_To])) Or [DateX] Is Null او طريقة استاذنا واخونا العود ابو خليل Between nz([forms]![frm_main]![Date_From];"01/01/1900") And nz([forms]![frm_main]![Date_To];"01/01/2100") . جعفر
    1 point
  41. هذا البطى يرجع الى كثرة المعادلات والصيغ الموجودة فى الشيت ومهما حاولت سيكون هناك بطىء واظن ان لديك معادلات صفيف او array مثل معادلات البحث VLOOKUP و INDEX و SUMPRODUCT فسيكون الحل ان شاء الله كالتالى قم بوقف عملية الحساب واجعلها يدوى كما فى الصوره وبعد الانتهاء من كل عملك اضغط f9 وسيتم حساب الورقه وحساب المعادلات New Bitmap Image.bmp
    1 point
  42. وعليكم السلام ورحمة الله وبركاته جرب التالي Dsum("[Evaluationa]"; "[Qrisk]"; "[risk]='HB'") Dsum("[Evaluationa]"; "[Qrisk]"; "[risk]='MA'") ri.rar تحياتي
    0 points
×
×
  • اضف...

Important Information