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

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

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

    سليم حاصبيا

    أوفيسنا


    • نقاط

      11

    • Posts

      8723


  2. Ali Mohamed Ali

    Ali Mohamed Ali

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


    • نقاط

      5

    • Posts

      11640


  3. SEMO.Pa3x

    SEMO.Pa3x

    الخبراء


    • نقاط

      5

    • Posts

      540


  4. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      5

    • Posts

      9938


Popular Content

Showing content with the highest reputation on 02/14/21 in all areas

  1. جرب هذا الكود Option Explicit Sub All_in_One() Dim Ob As Object Dim Lr, i Dim Sd#, Se#, Sf#, Sg#, _ Sh#, Si#, Sj#, Sk# Dim kY Dim Sal As Worksheet Set Sal = Sheets("Salim") Lr = Sal.Cells(Rows.Count, 1).End(3).Row Sal.Range("P2").Resize(Lr, 12).ClearContents Set Ob = CreateObject("Scripting.Dictionary") With Sal For i = 2 To Lr Sd = Sd + Val(.Cells(i, "D")): Se = Se + Val(.Cells(i, "E")) Sf = Sf + Val(.Cells(i, "F")): Sg = Sg + Val(.Cells(i, "G")) Sh = Sh + Val(.Cells(i, "H")): Si = Si + Val(.Cells(i, "I")) Sj = Sj + Val(.Cells(i, "J")): Sk = Sk + Val(.Cells(i, "K")) Ob(.Cells(i, 1) & "*" & .Cells(i, 2) & "*" & .Cells(i, 3)) = _ Sd & "*" & Se & "*" & Sf & "*" & Sg & "*" _ & Sh & "*" & Si & "*" & Sj & "*" & Sk If .Cells(i, 1) <> .Cells(i + 1, 1) Then Sd = 0: Se = 0: Sf = 0: Sg = 0: _ Sh = 0: Si = 0: Sj = 0: Sk = 0 End If Next For i = 0 To Ob.Count - 1 .Cells(2, "p").Offset(i).Resize(, 3) = Split(Ob.KEYS()(i), "*") .Cells(2, "S").Offset(i).Resize(, 8) = Split(Ob.iTEMS()(i), "*") Next .Cells(1, "P").CurrentRegion.Value = _ .Cells(1, "P").CurrentRegion.Value End With End Sub الملف مرفق صفحة Salim Ali_Mas.xlsm
    4 points
  2. السلام عليكم و رحمة الله و بركاته لدى تصفحي أحد المواقع وجدت هذا المثال فأحببت ان أقوم بمشاركته , / بعد تعريبه طبعآ / عله يستفيد منه أحد الاخوة ثيمات.mdb
    3 points
  3. زيادة في الموضوع 1- عند الضغط على اي سطر في الليست بوكس (ما عدا سطر العنوان طبعاً) تظهر لك بيانات الاسم في التكست بوكسات Shibl_Extra.xlsm
    3 points
  4. السلام عليكم وذلك من خلال هذه المعادلة بداية من الخلية P2 =IFERROR(INDEX($A$2:$A$550,AGGREGATE(15,6,ROW($A$1:$A$302)/(MATCH($A$2:$A$550&$B$2:$B$550&$C$2:$C$550,$A$2:$A$550&$B$2:$B$550&$C$2:$C$550,0)=ROW($A$1:$A$302)),ROWS($2:2))),"") Book2.xlsx
    2 points
  5. جزاك الله خيرا اخي بيسكرا 💐 تسلم ايدك ع الامثله الجميله سوف اطلع عليه عند العوده من العمل إن شاء الله تقبل تحياتي اخوك الصغير احمد
    2 points
  6. تفضل يمكنك استخدام هذا الكود Sub AddBlankRows() Dim iRow As Integer, iCol As Integer Dim oRng As Range Set oRng = Range("b1") iRow = oRng.Row iCol = oRng.Column Do If Cells(iRow + 1, iCol) <> Cells(iRow, iCol) Then Cells(iRow + 1, iCol).EntireRow.Insert shift:=xlDown iRow = iRow + 2 Else iRow = iRow + 1 End If Loop While Not Cells(iRow, iCol).Text = "" End Sub MM.xlsm
    2 points
  7. تفضل 🙂 1. في النموذج : . 2. وفي الاستعلام : . وهو عيناً كود اخوي احمد ، ولكن اسماء الحقول في الاستعلام تختلف 🙂 . جعفر 1311.10.DATA14.mdb.zip
    2 points
  8. بصراحة لا امتلك الوقت الكافي لإقدم دورة عن كتابة الpattern كما انها متوفرة في google ماعليك فقط البحث وسوف تجد مئات الدروس اتذكر قبل 5 سنوات تعلمت هذه التقنية من دورة في اليوتيوب، تفضل هذا الرابط:
    2 points
  9. جرب وأخبرني النتيجة: [\u0621-\u064A\u0660-\u0669a-zA-Z]+$
    2 points
  10. بسم الله الرحمن الرحيم السلام عليكم ورحمة الله وبركاته في هذا الدرس سأقدم نظرة عامة، ومُقدمة على التعابير القياسية Regular Expression وذلك لأهميتها الكبيرة في البرمجة. ملاحظة: لن اتطرق لكيفية كتابة الـ patterns نضرة لصعوبته على البعض لانه يحتاج اساسيات ومقدمات. في هذا الدرس سوف أستخدم بإذن الله لغة VBA في عمل اختبارات على الـ Regular Expression تعريف Regular Expression: هو كائن يصف نمطًا من المحارف ( أو الكلمات ). تعريف أعمق للتعابير القياسية: هي سلسلة من الأحرف التي تحدد نمطًا للبحث داخل النصوص (String) أو للمطابقة بين سلاسل من الأحرف. الهدف من التعاببير القياسية هو تسهيل عمليات البحث والاستبدال داخل النصوص، وتستخدم غالبًا في عمليات التحقق (Validation) وعمليات البحث (Searching) وايضًا في الحماية. ولتوضيح الفكرة بشكل أفضل بإمكاننا وضع مثال بسيط واقتراح الحلول له ثم بعد ذلك تبسيط الحل باستخدام التعابيير القياسية والتي سنرمز لها لاحقًا بـ RegExp. لنفرض أننا سنقوم ببرمجة نموذج تسجيل وستكون المدخلات المطلوبة ( اسم المستخدم - Username & البريد الإلكتروني - Email ) ونريد أن نتأكد من التالي: اسم المستخدم يجب أن يكون خليط من حروف وأرقام ، والرموز التالية فقط (_-.). البريد الإلكتروني يجب أن يكون بالشكل التالي : email_name@domain_name.top-level-domain مثال: cielblog@hotmail.com. وسيكون شكل نموذج التسجيل كالأتي: الحلول المقترحة كثيرة، مثلًا لكي نتأكد أن إسم المستخدم خالٍ من المسافات والرموز نحتاج لعمل تصفية (Filter) له، والتأكد اولًا من وجود مسافات واستبدالها مثلًا بالرمز _ او ازالتها كليًا، بعد ذلك تنقيح الاسم من الرموز الممنوعة ... عملية طويلة 🤔 اما البريد الإلكتروني يجب ان نتأكد اولًا من خلوه من المسافات ايضًا، والرموز الممنوعة في اغلب مشغلات البريد الإلكتروني، بعد ذلك التحرك قليلًا للتأكد أنّ ماقبل علامة @ هو String ومابعده String ثم التحقق أن ماقبل علامة النقطة - dot - هو String ومابعده هو top-level-domain ... عملية أطول 🤔 في التعابيير القياسية يمكننا اختصار كل هذه العمليات بسطر واحد أو نصف سطر حتى، وفي درسنا هذا سنتعلم كيف نحل مشكلتنا هذه ان شاء الله. أولاً: انسخ الفنكشن الآتي.. ' ----------------------------------------------------------------------' ' Return True if the given string value matches the given Regex pattern ' ' ----------------------------------------------------------------------' Public Function RegexMatch(value As Variant, pattern As String) As Boolean If IsNull(value) Then Exit Function ' Using a static, we avoid re-creating the same regex object for every call ' Static regex As Object ' Initialise the Regex object ' If regex Is Nothing Then Set regex = CreateObject("vbscript.regexp") With regex .Global = True .IgnoreCase = True .MultiLine = True End With End If ' Update the regex pattern if it has changed since last time we were called ' If regex.pattern <> pattern Then regex.pattern = pattern ' Test the value against the pattern ' RegexMatch = regex.test(value) End Function لاحظو الفنكشن يتكون من براميترات 2 الأول القيمة المراد اجراء التحقق عليها والبراميتر الثاني هو معيار التحقق ولو اردت ان اكتب تحقق لإسم المستخدم، سأكتب: If RegexMatch("semo", "^[\w_-]+$") = True Then MsgBox "Correct username", vbInformation, "CORRECT" Else MsgBox "Wrong username", vbCritical, "ERROR!" End If لو اردت ان اكتب تحقق للبريد الإلكتروني سأكتب: If RegexMatch("test@gmail.com", "[A-Za-z0-9_\-.]+@[A-Za-z0-9_\-.]+\.(com|org|net)") = True Then MsgBox "Correct email", vbInformation, "CORRECT" Else MsgBox "Wrong email", vbCritical, "ERROR!" End If للفائدة، google ممتلئ بالـ patterns ماعليك فقط ان تبحث قليلاً وستجد الباترن المطلوب ☺️ بالتوفيق للجميع.
    1 point
  11. لهذا السبب قلت : فالظاهر انك ارفقت ملف تجارب ولم ترفق ملفك الاصل ، ولما حاولت التطبيق على ملفك ، حدثت لك هذه المشكلة التي لا اعرف ماهي !! راجع الخطوات مرة اخرى ، فالتعديل لم يلمس حقل iPage اصلا !! جعفر
    1 point
  12. وعليكم السلام 🙂 اخوي محمد ، ياريت جزء مقتطع من برنامجك لهذه الفقرة ، حتى نعرف التعامل معها 🙂 او حتى الكود التابع لها 🙂 مجرد صورة من رسالة الخطأ لن تفيدنا 🙂 جعفر
    1 point
  13. مثال من موقع أجنبي ربما يشكل بداية للفكرة GetPhotoLocation v1.2.zip
    1 point
  14. مجرد رأي فكرة ألبوم صور، أو كما شاهدت في بعض المواقع استعمال قوقل إرث،
    1 point
  15. في الكود اوقف هذا الكود On Error Resume Next وبيطلع لك ان كود الترحيل فيه خطاء
    1 point
  16. أعجبني الملف المرفق لما فيه من أفكار للتصميم العصري للنماذج و شريط الأدوات أردت أن يطلع عليه من يريد التجربة و الإستفادة نظرا لكبر الملف فهو مجزأ لذا فك الملفات الثلاثة في ملف واحد، رابط موقع صاحب الملف الموقع من هنا bin.rar VBA_TOOLS.rar dll_Test.rar
    1 point
  17. أهلا بك.. افتح مشاركة جديدة إذا أردت الإجابة..
    1 point
  18. الأمر ليس سهلا كما تظن.. لأمرين.. الأول ثبات مقاس الصورة ودقتها عند العرض.. الثاني ليس في أكسس نفسه أدوات تساعد على هذا ولابد من استعانة بمصادر أخري.. اسهل الطرق في نظري هو استخدام خرائط العنوان الوطني.
    1 point
  19. وعليكم السلام 🙂 اعطني بعض الوقت حتى ابلور الفكرة 🙂 جعفر
    1 point
  20. وعليكم السلام-لابد وان تكون المعادلة هكذا ="@"&INDEX(SheetNames,ROW()-1) ومن ثم فعليك إضافة هذه العلامة @ لكل أسماء صفحات الملف حتى تعمل معادلة Indirect بكفاءة
    1 point
  21. صدقت فعلا شفرة غير أمنة تم التعديل و تفادي هذي المشكلة مثال الصلاحيات (1).mdb
    1 point
  22. شكرا جزبلا اخي بارك الله فيك هل يوجد طريقة اخري؟
    1 point
  23. أهلابك.. نعم يمكن.. انسخ السطر المتعلق بالزر والذي أشرت إليه أعلا وسوف يأخذ نفس الخصائص Dashboard2003.mdb
    1 point
  24. جزاك الله خيرا د جسنين @SEMO.Pa3x 💐 استاذى العزيز @أبو إبراهيم الغامدي راجع هذا الروابط لعله ما تريد الى ان يشاركنا د حسنين https://stackoverflow.com/questions/29729391/regular-expression-arabic-characters-and-numbers-only https://en.wikipedia.org/wiki/Arabic_script_in_Unicode بارك الله فيكم اساتذتى وجزاكم الله عنا كل خير
    1 point
  25. بوركت أخي husamwahab هذا المطلوب تماما قد تكون صحيحه Hawiiiولكن ملاحظة أخي واعتقد أنه يوجد حل عن طريق كود في الاستعلام شاكرا للجميع وبوركت جهودكم
    1 point
  26. عملك ممتاز أخ حسام ، وأقترح أن يكون الـ Max لرقم الفاتورة أفضل من التاريخ ، فالتاريخ ممكن يكون فيه أخطاء ادخال.
    1 point
  27. السلام عليكم اخ نبراس كاظم هذه محاولة ارجو ان تكون موفقة تم تعديل بعض الجداول واضافة جدول اخر بالنسبة للكميات الحالية: الكمية الافتتاحية + مجموع الشراء + مجموع مرتجع بيع - مجموع البيع - مجموع مرتجع شراء مرتجع بيع = ارجاع الزبون للمادة مرتجع شراء = ارجاع المادة للمجهز بالنسبة للمبالغ المستقة للمجهز : مجموع مبالغ الشراء - مجموع مبالغ مرتجع شراء - مجموع المبالغ الواصلة للمجهز - مجموع المبالغ المدفوعة للمجهز بالنسبة للمبالغ المستحقة على الزبون : مجموع مبالغ البيع - مجموع مبالغ مرتجع بيع - مجموع المبالغ الواصلة من الزبون - مجموع المبالغ المقبوضة من الزبون مجوع مبالغ الشراء ومبالغ البيع ومرتجع الشراء ومرتجع البيع تحسب من جدول tbl_footer مجموع المبالغ المدفوعة للمجهز والمبالغ المقبوضة من الزبون تحس من جدول tbl_InOut مجموع المبالغ الواصلة للمجهز والمبالغ الواصلة من الزبون تحسب من جدول tbl_header هذه المعادلات حسب فهمي المتواضع والراي لاساتذتنا وعذرا للاطالة Watch_Shop-aa.rar
    1 point
  28. تفضل التعديل ارجو ان يكون طلبك حساب تاريخ الحمل-11.rar
    1 point
  29. تم تعديل الكود لكن هناك بعض الملاحظات 1- البيانات غير مكتملة (الكثير من الجداول تحتوي على صفوف فارغة) قمت يتعبئة بعضها عشوائياُ لذلك أعتدر عن المتابعة اذا لم تكتمل الجداول بالشكل المطلوب (دون صفوف فارغة ولا بهم عدد الصفوف أو عدد الاوراق) وفي نفس المكان في كل صفحة (ابنداء من A1 ) 2-تم حذف بعض الصفحات غير المكتملة للتدقيق في عمل الكود (يمكن اعادة وضعها) 3 الاسم الذي تفتش عنه (يأول حرف او عدة حروف) يتم تلوينه بكل الصفحات 3- اكتب حرفاً أو عدة جروف ثم اضغط الزر بحث و تدرج كل الاسماء التي تبدأ بهذه الحروف في الليست بوكس مع عناوينها (اسم الصفحة و غنوان الحلية) وبذلك يمكنك الذهاب الى اي شيت وتقوم بتعديل ما تريد قي الصفوف الخصراء) Shibl_new.xlsm
    1 point
  30. هذا هو المرفق أرجو أن ينفع الله به أحدا من المسلمين المرفق يحتاج اضافة مرجع كما بالصورة المراجع والمصادر: 1- من شركة مايكروسوفت 2- لمزيد من الشرح والتوضيح من معلمنا أ/ جعفر MenuAndShortCutMenu.rar InsertReference.rar
    1 point
  31. السلام عليكم ورحمة الله وبركاته تصفية(1).xlsx
    1 point
  32. اخى الكريم الاكسل لايسمح بعمل كلمة مرور فى وضع المشاركة اولا قم بالغاء وضع المشاركة من خلال Review ثم النقر على Share Workbook ثم ازالة علامة صح من المربع بجانب Allow ثم اضغط ok ثم yes ثم اضغط على Protect Sheet او Prtect Workbook ثم اكتب كلمة المرور ثم التأكيد على كلمة المرور ثم اضغط ok ثم ارجع فعل مشاركة الملف من خلال النقر على Share Workbook ثم علم فى المربع بجانب Allow ثم ok
    1 point
  33. بعد اذن اخونا الساحر طبعاً ولإثراء الموضوع -تفضل How to Protect Cells, Sheets, and Workbooks in Excel وهذا ايضاً فيديو للشرح Password Protect Excel File: How to Save a Workbook With a Password
    1 point
  34. السلام عليكم حدد ملف > معلومات. حدد المربع حماية المصنف واختر التشفير باستخدام كلمه مرور. ادخل كلمه مرور في مربع كلمه المرور ، ثم حدد موافق. قم بتاكيد كلمه المرور في المربع أعاده إدخال كلمه المرور ، ثم حدد موافق.
    1 point
  35. السلام عليكم ورحمة الله وبركاته أسعد الله أوقاتك بكل الخير والمحبة هذا رابط ان شاء الله يلبي رغبتك ويكون هو المطلوب على حسب معلوماتنا وخبرتنا البسيطة . https://www.ispringsolutions.com/blog/how-to-create-an-ipad-app-with-ispring-converter ولكم منا كل الاحترام والتقدير
    1 point
  36. السلام عليكم نعم اخي الكريم ضع جميع مهاراتك في حماية القاعدة الخلفيه فهي لا تحتاج سوى عمل اتصال بها فانا اعمل مع القواعد الخلفيه الاتي 1 -ادخال فورم حماية على القاعدة وجعله يعمل اوتران (يعمل عند فتح قاعدة البيانات) 2 - الغاء مفتاح الشفت 3 - اخفاء كائنات قاعدة البيانات جميعها 4 - وضع باسويرد على القاعدة باكثر من طريقه 5- التلاعب باعدادات الاكسس بالتوفيق
    1 point
  37. السلام عليكم بعد اذن الاساتذه الكرام عملية تقسيم قاعدة البيانات يقوم بها معالج التقسيم وهي الطريقه الافضل والاسرع في التقسيم وعملية الربط 1 فيما يخص التعارض في ادخال البيانات حتى نتجنب هذا التعارض نقوم بتغير الاعدادات على الاكسس وكما يلي ا جعل السجل محرر في جميع النماذج هذا الاجراء يعمل على اظهار قفل على النموذج المستعمل من قبل مستخدم اخر وبعد انتهاء وبعد الانتهاء من استخدامه يمكن لاي مستخدم يحرر النموذج ب تغير الفواصل الزمنيه من OPTIONS -------- CLIENT SETTING اما ميخص الربط بالفجول استووديو فلا نحتاج الى هذا الربط في حالة ان عدد المستخدمين لقاعدة البيانات 10 او اقل وحجم البيانات اقل من 2G بايت فالاكسس قادر على عمل ذلك بمفرده تقبلوا فائق الاحترام والتقدير
    1 point
  38. اجابة لكل اسئلتك عند الانتهاء من مشروعك تقوم بتقسيم قاعدة البيانات الى جداول وواجهات (معالج اكسس يقوم بذلك ) تضع الجداول على جهاز وتوزع الواجهات على الاجهزة الاخرى ويمكن في هذه الحالة ان تعمل عشرة اجهزة في وقت واحد بقي شيء مهم وهو لا تنسى تضبط جميع نماذجك من الخصائص / لسان التبويب : بيانات /القيمة : تأمين السجلات ، اجعلها : سجل محرر
    1 point
  39. جرب الحل المقترح من مايكروسوفت على الرابط التالي https://answers.microsoft.com/en-us/windows/forum/windows_7-pictures/how-do-i-fix-exploreexe-appcrash-on-my-program/df423530-f115-436e-8994-835704864740
    0 points
×
×
  • اضف...

Important Information