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

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

  1. ياسر خليل أبو البراء

    ياسر خليل أبو البراء

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


    • نقاط

      6

    • Posts

      13,165


  2. Shivan Rekany

    Shivan Rekany

    الخبراء


    • نقاط

      4

    • Posts

      3,491


  3. صالح حمادي

    صالح حمادي

    أوفيسنا


    • نقاط

      3

    • Posts

      1,745


  4. ابوخليل

    ابوخليل

    أوفيسنا


    • نقاط

      3

    • Posts

      12,208


Popular Content

Showing content with the highest reputation on 07 يون, 2017 in all areas

  1. السلام عليكم بعد اذن استاذي القدير / أبو البراء اعتقد مع كثرة البيانات سيكون الكود الذي ادرجة استاذي ابو البراء جزاه الله عنا خيراً هو الخيار الافضل - ومع ذلك اليك حل اخر بالمعادلات test 000_2.rar =IFERROR(INDEX(Sheet1!$B$2:$B$1000,SMALL(IF(Sheet1!$A$2:$A$1000=$A2,ROW($A$2:$A$1000)-ROW($A$2)+1),COLUMN(A1))),"")
    2 points
  2. تفضل تم التعديل مشكلتك تكمن في اختلاف مسمى الصف بين الجدولين فأنا اعتمدت اسم الصف في جدول أ وعدلت اسماء الصفوف في جدول ترحيل الناجحين3.rar
    2 points
  3. أخي الكريم أبو سارة .. جربت كود الأخ الحبيب خالد ويعمل بشكل جيد جداً عموماً إثراءً للموضوع هذا كود آخر مقارب لكود الأخ خالد لعله يفيدك Sub PopulateNumbers() Dim cell As Range Dim x As Long Dim lr As Long Range("C3:C1000").ClearContents For Each cell In Range("A3:A" & Cells(Rows.Count, 1).End(xlUp).Row) x = cell.Offset(, 1) lr = Cells(Rows.Count, 3).End(xlUp).Row + 1 Range("C" & lr).Resize(x, 1).Value = cell.Value Next cell End Sub
    2 points
  4. اتفضلي اليك هذا الكود مثلا عندك جدول باسم تابل 1 و حقل باسم موبايل ونوعيته هو تيكست وتريد تتغير الى نمبر استخدم هذا الكود Dim db As DAO.Database Set db = CurrentDb Dim strSQL As String strSQL = "ALTER TABLE Table1 ALTER COLUMN mobile INTEGER" db.Execute strSQL Set db = Nothing او بلعكس من نمبر الى تيكست اسنخدم هكذا strSQL = "ALTER TABLE Table1 ALTER COLUMN mobile TEXT(10)" هناك ملاحظة : لا يجوز ان تستخدم الكود بواسطة نموذج مصدره ذلك الجدول
    2 points
  5. السلام عليكم ورحمة الله أخواني الكرام وعلمائنا وأساتذتنا العباقرة في هذا الصرح العملاق والأكثر من رائع بعد إنتهاء ولله الحمد من برمجة برنامج شؤون الموظفين والمرتبات ونشره في الموقع منذ فترة وجيزة على هذا الرابط برنامج شؤون وإدارة الموظفين بحلته وشكله الجديد أحببت اليوم بعد طلبات من الاصدقاء أن أقوم برفع البرنامج مفتوح المصدر لكي تتم الفائدة منه في كافة النواحي العلمية والعملية وذلك من (خلال الكودات وطريقة التصميم) ماعليكم سوا فك الضغط عن الملف المرفق وتنصيب البرنامج بكل سهولة وفي الاخير تفعيل الماكرو يعمل البرنامج على كافة أنظمة ويندوز وكافة نسخ أوفيس من 2007 ومافوق لاتنسونا من الدعاء بظهر الغيب في هذه الايام المباركة الملف بامتداد zip هو الملف كاملا Office Soft.Employ & Salary-Source.zip Office Soft.Employ _ Salary-Source.rar
    1 point
  6. السلام عليكم و رحمة الله تعالى و بركاته إخوتي الكرام حياكم الله و تقبل الله منا و منكم الصيامكم و القيام أضع بين أيديكم طريقة إنشاء نسخة تجريبية و حمايتها و قابلية تفعيلها و كل هذا بتوظيف الرجستري. خصائص البرنامج: 1- يكتشف إرجاع التاريخ 2- حتى لونزلت نسخة ثانية بعد إنتهاء التفعيل أو إنتهاء النسخة التجريبية فلن تعمل لأن الحماية مخزنة بالرجستري 3- رقم التفعيل يتغير من يوم إلى آخر حسب التاريخ 4- تستطيع تفعيل البرنامج بعد إنتهاء التفعيل بنفس النسخة 5- يحذف البرنامج الجدول الذي به رقم النسخة و كود الحماية مباشرة بعد أول تشغيل 6- يعطيك في أول تشغيل فترة تجريبية تحددها انت كما تشاء 7- رقم التفعيل مخبأة في مكان بالرجستري لا يمكن الحصول عليه هذا هو المرفق و أتمنى من الأعضاء أن يقوموا بتجربة المرفق و إعطائنا النتائج و من بعدها نقوم بشرح أكواد البرنامج: فترة تجريبية1.rar
    1 point
  7. بعد اذنك طبعا سويت لك بعض التعديلات تجربة-3.rar
    1 point
  8. هذا الكود يؤكد كلامي أخي شيفان حيث ان حدث عند الضغط يخص النموذج ولا يخص قاعدة البيانات ككل متى يكون هذا ممكنا؟! بدون وضع الكود الثاني في حدث عند الضغط Form_keydown والله تعالى اعلى واعلم
    1 point
  9. لا يوجد سبب فهذا هو المطلوب تيسيرا على المستخدم يبدو أن حضرتك ما قرأت هذا الجزء جيدا والمدة هنا يومان فقط لنرى من سيجعل البرنامج يعمل لأكثر من يومين بدون استخدام أداة التفعيل فأداة التفعيل تجعله يعمل إلى الأبد وفقنا الله وإياكم لكل خير
    1 point
  10. حسب فهمي لا ليس ممكن .. إلا اذا * المبرمج اعطاه الكود في وقت محدد ان يغير شيء هكذا ما هو نوع ذاك الحقل من قبل والان صار اي ؟ ممكن توضيح اكثر لان ما افكر ان يحدث هذا الامر
    1 point
  11. شكرا جزيلا أستاذ ياسر وضحت الفكرة وتم إضافتها إلى المخزون المعرفي في الأكسل.
    1 point
  12. المرفق السابق لك أستاذ عمرو لا يعيد التسلسل من البداية مع بداية كل شهر جديد ولكن يعيد مع عام جديد فقط على أية حال عدلت لك الكود ليضيف البادئة التي طلبتها auto number text field.rar
    1 point
  13. الاخ الكريم الاستاذ /سليم بارك الله فيكم ولكم جزيل الشكر
    1 point
  14. لربما بسبب اهتزاز الشاشة وهنا يمكن استخدام السطر التالي في بداية الكود بعد الإعلان عن المتغيرات Application.ScreenUpdating=False وفي نهاية الكود نفس السطر مع تغيير القيمة False إلى True
    1 point
  15. ما شاء الله تبارك الله على ابداعك وسرعة ردك واهتمامك اخونا الكريم أ / محمد صالح إن شاء الله سيتم تسمية الشيتات باللغة الانجليزية وجزاكم الله عنا خير الجزاء وفقنا الله وإياكم لكل خير
    1 point
  16. هل تقصد أنك إذا أدخلت القمية ( 1000) في خلية ما تظهر بهذه الطريقة ( 1.000) في نفس الخلية أو في خلية اخرى؟ هل يمكنك توضيح المطلوب بطريقة أخرى ؟
    1 point
  17. زيادة في اثراء الموضوع هذا الكود Option Explicit Sub copy_as_you_want() Dim i, c As Integer Dim Cont Dim Lr As Long Lr = ActiveSheet.Cells(Rows.count, 3).End(3).Row Range("c3:c" & Lr).ClearContents i = 3 c = 3 Do While Cells(i, 1) <> "" Cont = Cells(i, 1).Offset(0, 1).Value If Not IsNumeric(Cont) Or Cont = "" Or Cont = 0 Then i = i + 1: GoTo 1 Cont = Int(Abs(Cont)) Range("c" & c & ":c" & c + Cont - 1).Value = Cells(i, 1).Value i = i + 1 c = c + Cont 1: Loop End Sub
    1 point
  18. ألف شكر لك حبيبي ياسر خليل أبو البراء هذا يعمل عندي بفاعلية قصوى وهو المطلوب في ميزان حسناتك وبارك الله لك والشكر موصول لكل من ساعدني في هذا العمل جزاكم الله خير الجزاء
    1 point
  19. أين الجزء الذي فيه نسخ التنسيق .. يفترض أنك تريد نسخ التنسيق من نطاق أو خلايا محددة باستخدام الأمر Copy أين هو في الكود؟ ثم إن السطر التالي غير منطقي إذ لابد من الإشارة لنطاق محدد للصق التنسيقات فيه .. راجع شرح الصورة مرة أخرى PasteSpecial Paste:=xlPasteFormats
    1 point
  20. جرب حذف السطر التالي من الكود حيث أنه يقوم بتحويل المعادلات لقيم ActiveSheet.UsedRange.Value = ActiveSheet.UsedRange.Value
    1 point
  21. السلام عليكم اخى الكريم حقيقة لا افهم المطلوب جيداً اتقصد هذا - ضع المعادلة التالية F1 - ام لم يكن المطلوب يرجي مزيد من التوضيح =E1/1000
    1 point
  22. يمكنك قبل نهاية الكود الإشارة للخلايا المطلوب مسحها ثم مسحها باستخدام ClearContents مثال : Range("B2:C2").ClearContents
    1 point
  23. عليكم السلام ورحمة الله وبركاته هوا فيه حل ممكن تعمل تقسيم للقاعدة Splitt وبالتالى الجداول هتنفصل عن النماذج والتقارير والاستعلامات ومهما قمت بالتطوير كل ما عليك فعله هو ربط القاعدة المقسمة بالجداول مرة اخرى وبالتالى لن تحتاج الى استيراد البيانات من الاصل مهما قمت بالتطوير بالتوفيق
    1 point
  24. هناك حل لهذه المشكلة ايظا فقط غير كما في الصورة واليك مرفقك بعد تعديل ليس هناك اي المشكلة والله يعلم اننا في الحياة والحياة بدون مشاكل ما بها التذوق Database1.rar
    1 point
  25. الحمد لله .. وشكرا لك على هذا الثناء وهذه الدعوات الطيبات
    1 point
  26. السلام عليكم ورحمة الله وبركاته بارك الله لكم جميعا ربما يفيدك هذا المثال المصنوع على عجالة للتعرف على أكواد المفاتيح ascii & ceycode وفتح نموذج عند الضغط على مفتاح معين open form by keys.rar
    1 point
  27. الدروس من الدرس الرابع ... الي ... الدرس السادس كيفية اظهار محرر الفيجوال بيسك الاكسيل4.rar مكونات محرر الفيجوال بيسك 5.rar كيفية التعامل مع محرر الفيجوال بيسك 6.rar الدروس من الدرس السابع ... الي ... الدرس التاسع المـــــــاكـــــــــــرو7.rar تابع المـاكـــــرو8.rar تابع المـاكـــــرو9.rar الدروس من الدرس العاشر ... الي ... الدرس الحادي عشر تابع المـاكـــــرو10.rar تابع المـاكـــــرو11.rar أرجو من الله ان أكون قد وفقت في توصيل ولو معلومة صغيرة لمن يريدها بخصوص هذا الجزء تقبلوا خالص تحياتي
    1 point
  28. هذه نسخة لأكسس 2003 من برنامج شريط الطباعة إنشاء شريط طباعة.rar
    1 point
  29. أهلين أخي العزيز جعفر و الله شرفتنا بمشاركتك. 1- الشريط يفتح تلقائيا و بدون أي تدخل و ذلك لأنني قمت بإضافة وحدة نمطية تتحسس لفتح التقارير و عند وجود أي تقرير مفتوح سوف تقوم بفتح الشريط مباشرة. 2- قمت بإضافة نموذج frm1 و وضعت أمر فتحه في حدث عند التحميل للنموذج الرئيسي و يبقى هذا النموذج مفتوح لكنه مخفي 3- وضعت أمر فتح الوحدة النمطية في حدث عند عداد الوقت (TIMER) للنموذج frm1 و أعطيت قيمة الفاصل الزمني نصف ثانية يعني أنه كل نصف ثاني يتحقق البرنامج هل هناك تقرير مفتوح أم لا و على هذا الأساس يقوم بفتح شريط الطباعة. 4- أضف ما شئت من التقارير و ضع كود فتحها بشكل عادي فالوحدة النمطية سوف تتعرف تلقائيا على اسم النموذج المفتوح و الشريط سوف يتحكم بأوامر التقرير كليا. 5- و إذا شئت قم بفتح التقرير من شريط التنقل سوف ترى أن الشريط يفتح معه أيضا. يعني أنه لإضافة شريط الطباعة هذا لا تحتاج لأي تغيير على أوامرك السابقة. فقط قم بتصدير الوحدة النمطية و النموذج frm1 و شريط الطباعة إلى برنامجك و ضع كود فتح النموذج frm1 في وضعية الإخفاء في حدث عند التحميل للنموذج الرئيسي لديك. و هذا هو الملف بعد التعديلات الأخيرة إنشاء شريط طباعة.rar نعم أخي تستطيع ذلك. إذا كنت تريد طباعة عدد من الصفحات أضغط على الزر إعداد الطباعة و اختر الصفحات التي تريدها و عدد النسخ كما توضح الصورة التالية: و إذا كنت تريد عدد النسخ المطبوعة من الصفحة الحالية فقم بالتالي: 1 أضف مربع نص 2 قم بكتابة اسم مربع النص مكان 1 في هذا الكود لزر "ط ص الحالية": DoCmd.PrintOut acPages, Me.NPg, Me.NPg, acHigh, 1, False
    1 point
  30. اخي كامل بدل ان تكتب الكود اعلاه مباشرة في الرد ، ويكون تنسيقه عديم الفائده ، استخدم الاداة التالية (انظر السهم الاحمر): ليصبح التنسيق مقروء هكذا: DoCmd.ApplyFilter , " اللقب like '*" & [Forms]![اسم النموذج]![اسم مربع النص] & "*'" جعفر
    1 point
  31. المثال الثامن استخدام طرق البحث في البيانات بواسطة اقترانات البحث في مجال aggregate functions المقدمة لاحظت من خلال المشاركات أن بعض المشاركين يعانون من صعوبة البحث في الجداول باستخدم اقترانات تحديد المجال ويواجهون صعوبة في وضع شروط البحث. قمت بتصميم هذا المثال ليساعد في فهم الطريقة التي يتم بها البحث وطريقة تحديد الشروط التي لها علاقة بنوع البيانات المستخدمة. التفاصيل من اقترانات البحث في مجال معين مثل جدول Dlookup ، DFirst ، DLast ، DSum ، DCount ، DAvg ، DMax ، DMin وغيرها في المثال تم بناء جدول بيانات الطلاب : الرقم والاسم وتاريخ الميلاد و المصروف و إن كان للطالب أخ وقد اختيرت هذه البيانات بالتحديد لإختلاف أنواع البيانات فيها فالرقم (رقم Number) والاسم (نص Text) وتاريخ الميلاد (تاريخ Date) والمصروف (رقم مزدوج Double) وله أخ (منطقي Boolean) ولكي نتعلم كيف نستخدم هذه العناصر في الشروط. وقد قمت في هذا المثال بعمل عدة اسئلة وهي البحث عن طالب بواسطة الرقم ؟ البحث عن طالب بواسطة الاسم ؟ البحث عن طالب بواسطة تاريخ الميلاد ؟ البحث عن طالب بواسطة الرقم و الاسم معا ؟ البحث عن طالب بواسطة وقوع تاريخ ميلاده بين تاريخين محددين ؟ البحث عن عدد الطلاب بواسطة سنة تاريخ الميلاد ؟ البحث عن أول طالب بواسطة إبتداء اسمه بأحرف معينة؟ البحث عن أصغر تاريخ ميلاد ضمن المجموعة ؟ البحث عن مجموع المصاريف لكل الطلاب ؟ البحث عدد الطلاب الذين لهم أخ ؟ البحث عن مجموع مصروف الطلبة الذين ليس لهم أخ وولدوا في شهر بعد الذي سيتم تحديده ؟ البحث عن معدل مصروف الطلبة الذين لم يولدوا في السنة المحددة ؟ البحث عن أخر طالب في الجدول له أخ ؟ عرض اسم وتاريخ ميلاد أول طالب يظهر في الجدول؟ ولنناقش هذه الطرق والاسئلة 1. البحث عن طالب بواسطة الرقم ؟ Private Sub cmd1_Click() no = InputBox("الرجاء إدخال رقم الطالب", "ادخال") w = Nz(DLookup("[sno]", "[student]", "[sno] = " & Str(no)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub استخدمت هنا الأقواس [ ] لحصر أسماء الحقول والجدول وهذا غير ضروري إذا كان الحقول من مقطع واحد ولكنه مهم جدا عند تكون الحقول أو اسم الجدول من مقطعين كأن يكون اسم الجدول مثلا جدول الطلاب أو يكون حقل التاريخ اسمه تاريخ الميلاد الاقتران Nz يضم لنا عدم ارجاع القيمة الفارغة Null فإذا كان الجواب Null يرجع لنا كجواب للبحث القيمة الخالية Empty ومنها نعرف نتيجة البحث لاحظ هنا كيف تم حصر الرقم بالاقتران str لتحويله إلى نص string 2. البحث عن طالب بواسطة الاسم ؟ Private Sub cmd2_Click() N = InputBox("الرجاء إدخال الاسم", "ادخال") w = Nz(DLookup("[sname]", "[student]", "[sname] = '" & N & "'"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا مع الحقل من نوع نص كيف نستخدم علامات التنصيص المفردة ' للإحاطة بالمتغير النصي 3. البحث عن طالب بواسطة تاريخ الميلاد ؟ Private Sub cmd3_Click() D = InputBox("الرجاء إدخال تاريخ الميلاد", "ادخال") w = Nz(DLookup("[sdate]", "[student]", "[sdate] = #" & D & "#"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا كيف نستخدم إشارة النمبر # للإحاطة بحقل من نوع تاريخ 4. البحث عن طالب بواسطة الرقم و الاسم معا ؟ Private Sub cmd4_Click() no = InputBox("الرجاء إدخال رقم الطالب", "ادخال") N = InputBox("الرجاء إدخال الاسم", "ادخال") w = Nz(DLookup("[sno]", "[student]", "[sno] = " & Str(no) & " and [sname] = '" & N & "'"), Empty) If Not IsEmpty(w) Then MsgBox "الطالب موجود" Else MsgBox "لا يوجد نتيجة" End If End Sub 5. البحث عن طالب بواسطة وقوع تاريخ ميلاده بين تاريخين محددين ؟ Private Sub cmd5_Click() D1 = InputBox("الرجاء إدخال التاريخ الأول", "ادخال") D2 = InputBox("الرجاء إدخال التاريخ الثاني", "ادخال") w = Nz(DLookup("[sdate]", "[student]", "[sdate] between #" & D1 & "# and #" & D2 & "#"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub عملية استخدام between ولا تنسى أن حدي البحث متضمنان في البحث 6. البحث عن عدد الطلاب بواسطة سنة تاريخ الميلاد ؟ Private Sub cmd6_Click() Y = InputBox("الرجاء إدخال سنة تاريخ الميلاد", "ادخال") w = DCount("*", "[student]", "year([sdate]) = " & Str(Y)) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا طريقة المقارنة مع السنة وهي رقم 7. البحث عن أول طالب بواسطة إبتداء اسمه بأحرف معينة ؟ Private Sub cmd7_Click() N = InputBox("الرجاء إدخال بداية الاسم", "ادخال") w = Nz(DFirst("[sname]", "[student]", "[sname] Like '" & N & "*'"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ كيف استخدمنا Like وأين وضعنا * 8. البحث عن أصغر تاريخ ميلاد ضمن المجموعة ؟ Private Sub cmd8_Click() w = Nz(DMin("[sdate]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub في بعض الاحيان لا نحتاج إلى شروط في البحث 9. البحث عن مجموع المصاريف لكل الطلاب ؟ Private Sub cmd9_Click() w = Nz(DSum("[sexp]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub 10. البحث عدد الطلاب الذين لهم أخ ؟ Private Sub cmd10_Click() w = Nz(DCount("[sexp]", "[student]", "[shasbrother] = True"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ هنا كيف استخدمنا البحث عن حقل نعم/لا boolean منطقي واستخدام true ويمكن أيضا المقارنة العدد -1 11. البحث عن مجموع مصروف الطلبة الذين ليس لهم أخ وولدوا في شهر بعد الذي سيتم تحديده ؟ Private Sub cmd11_Click() M = InputBox("الرجاء إدخال الشهر", "ادخال") w = Nz(DSum("[sexp]", "[student]", "[shasbrother] = false and month([sdate]) > " & Str(M)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ كيفية صياغة الشروط المركبة مع and 12. البحث عن معدل مصروف الطلبة الذين لم يولدوا في السنة المحددة ؟ Private Sub cmd12_Click() Y = InputBox("الرجاء إدخال السنة", "ادخال") w = Nz(DAvg("[sexp]", "[student]", "year([sdate]) <> " & Str(Y)), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub <> تعني لا يساوي 13. البحث عن أخر طالب في الجدول له أخ ؟ Private Sub cmd13_Click() w = Nz(DLast("[sname]", "[student]", "[shasbrother] = True"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub 14. عرض اسم وتاريخ ميلاد أول طالب يظهر في الجدول ؟ Private Sub cmd14_Click() w = Nz(DFirst("[sname] & ' ' & [sdate]", "[student]"), Empty) If Not IsEmpty(w) Then MsgBox w Else MsgBox "لا يوجد نتيجة" End If End Sub لاحظ علاملات التنصيص المفردة ' وذلك لترك فراغ بين الرقم والاسم المثال : aggregate.rar تحياتي
    1 point
×
×
  • اضف...

Important Information