نجوم المشاركات
Popular Content
Showing content with the highest reputation on 12/21/19 in all areas
-
هذا ليس لك يا ابا البشر كان للاستاذ ابو اشرف ردي لك كان لماذا الاعتذار من دواعي سروري النقاش معك اخي العزيز3 points
-
3 points
-
في المرة المقبلة ارفع نموذجاً عما تريد لنفرض ان البيانات عندك في A العامود ابتداءً من A1 اكتب هذا المعادلة واسحب نزولاً =IF(A1="","",CHOOSE((N(A1)<=0)+1,A1,0)) الملف مرفق كمثال sal_book.xlsx3 points
-
اذا كنت تقصد رقم اللون .... فتجد في هذه المشاركة ملف PDF فيه جميع ارقام الألوان .....3 points
-
3 points
-
المختصر المفيد : 1. اذا كان عندك على الاقل استعلامين/جدولين ، كل واحد يعمل بطريقته وبسجلاته ، يعني قد يكون عندك استعلام عادي به معايير ، واستعلام آخر به مجاميع ، واستعلام جدولي ثالث .... ، او بدل ما يكون الاستعلام جاهز ، ممكن مباشرة نكتب SQL الاستعلام في استعلام التوحيد ، مثل: 2. الشرط الوحيد هو ان يكون عدد الحقول نفسه لجميع الاستعلامات اللي تريد توحدها 🙂 3. ودمج الاستعلامات يكون عن طريق الامر Union ، والذي به لا تحصل على سجلات متكررة ، بينما الامر Union All ، يعطيك كل السجلات. 4. استعلام التوحيد الذي عملناه من الخطوة 3 ، يُعتبر استعلام عادي ، والذي يمكن ان تعمل استعلام جديد وتستعمل استعلام التوحيد كمصدر لبيانات الاستعلام الجديد ، للعلم ، استعلام التوحيد بطيء بالمقارنه مع بقية انواع الاستعلامات 🙂 جعفر3 points
-
تفضل اخي الكريم Dim excelFilePath As String excelFilePath = CurrentProject.Path & "\" & "employee.xlsx" ' حذف الجدول القديم DoCmd.DeleteObject acTable, "employee" ' استيراد الجدول الجديد DoCmd.TransferSpreadsheet acLink, acSpreadsheetTypeExcel16, "employee", excelFilePath, True ملاحظة : acSpreadsheetTypeExcel16 يتغير حسب اصدار الاوفيس لديك سيظهر معك الان كجدول مرتبط قم بعمل استعلام الحاق للجدول الاساسي لاضافة البيانات اليه تحياتي3 points
-
2 points
-
2 points
-
السلام عليكم ورحمة الله وبركاته فكرة قمت بتجميها من عدة افكار لعمل قائمة منسدلة متغيرة حسب معطيات جدول يحتوي على خواص بحث احببت مشاركتها معكم ارجو ان تكون بها فائدة لكم مني فائق الشكر والتقدير معادلة جدول الحصص.xlsx2 points
-
السلام عليكم 🙂 اذا تسمحي اخوي ابو خليل ، واخوي محمد ابوعبدالله 🙂 مشاركتي لا تؤدي العمل بضغطة زر ، وانما تقدر تستفيد منها لتوزيع الغرف لاحقا ايضا 🙂 الاختيار ليس تلقائي ، ولكنه يسهل العمل كثيرا 🙂 ومن تجربتي مع الحجاج ، بعض الاوقات في مجموعة تحب ان تكون مع مجموعة اخرى في الباص ، فطريقتي سوف تسهل عليك 🙂 العمل كله بيكون في الجدول tbl_Groups ، والعمل بالمجموعات ، لذا : 1 و 2. استعلامات الحاقية ، فقط لاخذ بيانات الجدولين tbl_Tsjeel والجدول tblSub_Tsjeel الى الجدول tbl_Groups . 4. نموذج العمل هو frm_Main تختار من قائمة "في انتظار التوزيع" (وفي الواقع الاختيار عن طريق userid) ، العدد الذي تريده ، وفي الاسفل بتشوف عدد اختياراتك ، ومجموع الاشخاص اللذين اخترتهم ، تختار الى اي باص تريد ان تلحقهم ، باختيار رقم الباص ، ثم النقر على الزر الاول (السهم من القائمة الى الباصات) ، وتلقائيا تشوف النتائج ، واذا اردت ارجاع اي مجموعة ، فالاختيار يكون من قائمة الباص ، وتنقر على الزر بالاسفل (السهم من الباصات الى القائمة) ، وتلقائيا تشوف النتيجة 🙂 . هي لعبة اكثر منها عمل 🙂 جعفر 1158.haj.mdb.zip2 points
-
حسب فهمي لطلبك جرب المرفق حسابات 12020.xlsm تحياتي2 points
-
السلام عليكم راجع الملف المرفق لعل فيه ما تريد... أرجو أن يفي الغرض المطلوب... بن علية حاجي Test_3.rar2 points
-
السلام عليكم تعريف الوحدات النمطية : هي دالة او مجموعة من الدوال مكتوبة بلغة VBA تؤدي غرضاً معيناً او تعيد قيماً محددة بناءً على قيماً مدخلة.ويتم استدعاء الوحدة النمطية في اي موقع في قاعدة البيانات سواءً في الاستعلامات او النماذج او في اشرطة الادوات. الغرض من الدالة : اختصار الوقت والمساحة في قاعدة البيانات مثلاً ربما يكون لدينا كود او مجموعة من الكودات المتشابهة في مواقع مختلفة من قاعدة البيانات فبدلاً من كتابتها في كل مرة نكتبها مرة واحدة في وحدة نمطية ونستدعيها في الموقع الذي نحتاجها . --------------------------------------------------------------------------------------------------------------------------- انشاء الوحدة النمطية بكون بالدخول الى محرر فيجيوال بيزيك: الكود التالي يمثل الدالة الاجرائية وهي ابسط انواع الدوال: Function Function_Name( ) Statement End Function شرح الكود :يجب ان تبدأ الدالة بهذه الكلمة للتعريف بانها دالة وهناك كلمات اخرى للتعريف بنوع الدالة لكن هذا النوع الشائع. (اسم الدالة) Function_Name ويجب مراعاة مايلي عند اختيار اسم الدالة : - اختيار الاسم باللغة الانجليزية - اختيار اسم يدل على وظيفة الدالة - اختصار الاسم قدر الامكان ويفضل ان تكون كلمة واحدة. - في حال استخدام عدة كلمات يجب ان لا تحتوي على فراغ يما بينها ولذلك يتم الفصل بينها بواسطة الشرطة السفلية. - تجنب استخدام الكلمات المحجوزة واذا لزم الامر اضف حرفاً الى بداية او نهاية الكلمة . ----------------------------------------------------------------------------------------------------------------------------------------- - مجموعة الكودات الاجرائية التي نحتاجها (Statement ) - التصريح عن نهاية الدالة (End Function) وتستخدم الدالة الاجرائية في تنفيذ الاوامر مثل فتح واغلاق النماذج , التنقل بين السجلات , التحكم في خصائص النماذج وعناصر التحكم , تشغيل جمل ال SQL , اظهار الرسائل المختلفة ... الخ ويتم استدعاء هذه الدالة كالتالي بالكود: Call Function_Name ( اسم الدالة) هذه بعض التلميحات المنقولة حول الدوال ارجو ان يكون فيها الفائدة هذا نموذج لوحدة نمطية لاخفاء شاشة الاكسس عند الفتح ونموذج رسالة ترحيب test.rar رسالة ترحيب.rar2 points
-
كشوف الملاحظة 20.3.rar ملف التنسيق 2019-12-01.rar2 points
-
2 points
-
لماذا لا نجعل للدخول سجل بالوقت والتاريخ وأيضا للخروج وقت وتاريخ أيضا ؟؟؟2 points
-
وعليكم السلام اخى عبداللطيف مجهود جميل بارك الله فيك اخى واستاذى خالد خالد بناء على ملاحظتك القيمه جزاك الله خيرا حاولت فيها بالحصول على اخر وقت دخول للمستخدم فى نموذج Main =DLast("Enter";"Time_Enter&Exit";"Users= [wUsers] ") وقمت باضافه حقل وقت الدخول فاستعلام التحديث ووضع له المعيار ويحدث الوقت شغال بس هل الفكره صحيحه كده تسجيل الدخول والخروج1.accdb2 points
-
2 points
-
نعم انا متابع مجهود احوي محمد ابوعبدالله ، ولكني اردت المشاركة بطريقة اخرى للحل 🙂 جعفر2 points
-
2 points
-
وعليكم السلام ورحمة الله وبركاته بالاضافة الى ما تفضل به استاذنا الفاضل @أحمد الفلاحجى وله الشكر تفضل اخي الكريم الكود التالي If IsNull(txtcategorie) Then MsgBox "la case est vide", vbCritical Me.txtcategorie.SetFocus Else Dim db As DAO.Database Dim Rs As DAO.Recordset Set db = CurrentDb Set Rs = db.OpenRecordset("SELECT Categories.*FROM Categories;") Rs.AddNew Rs("IdCategorie") = DMax("[IdCategorie]", "Categories") + 1 Rs("LibCategorie") = Me.txtcategorie Rs.Update Rs.Close End If testInsert.accdb تحياتي2 points
-
بعد إذن أخي الفاضل حسين مامون محاولة لعلاج المشكلة تم تعديل اسماء أوراق العمل جرب هذا بعد فك الضغط برنامج النظافة بعد التعديل (1).rar2 points
-
جزاكم الله خيرا اساتذتى ما اجمل تفاعلكم معنا وتبسيط وتوفير المعلومات للمبتدئين وطلاب العلم جزاكم الله عنا خير الجزاء واشارك معكم بقناه لشرح Vba للاكسيس قناه مساقات اونلاين واذا فيه قنوات اخرى او كتب بس والنبى عربى وان لم يكن الا عنجليزى فيرحمنا الله معه بقى لاننى ابحث عن اى شىء للفهم والتعلم حتى اننى استعمل اكواد الاكسيل فالاكسيس والحمدلله تقبلوا تحياتى وتمنياتى لكم وللجميع بالتوفيق طبتم واهتديتم1 point
-
السلام عليكم بالشروط الجديدة التي ذكرتها تعقدت المعادلة بعض الشيء (وهي معادلة صفيف أي يجب تأكيدها بواسطة Ctrl+Shift+Enter)... تم تعديل المعادلة الثانية التي لم يُستعمل فيه جداول مساعدة... واعذرني على التأخير في الرد لأني كنت خارج البيت... بن علية حاجي If formula (3).xlsm1 point
-
الف مبروك للاستاد احمد بدره اتمنى لك مزيدا من العطاء والتألق تحياتي1 point
-
1 point
-
ألف مبروك والى الأمام دائما ترقية مستحقة أعانك الله على هذه المسؤلية1 point
-
هل جربت دخول مستخدم مثلا الساعة الحادية عشر ليلا ثم خرج الساعة الواحدة صباحا .....1 point
-
جزاك الله خيرا اخى واستاذى خالد احسنت اخى ومنكم نتعلم وتنويع الحلول هو الطريق للتعلم فعلا كما قال اخينا واستاذنا الحبيب جعفر جزاكم الله خيرا1 point
-
بارك الله فيك اخ سليم عمل ممتاز مثلما طلبت بالضبط ادامك الله عونا لنا الكود يعمل 100 ب 1001 point
-
1 point
-
1 point
-
1 point
-
جرب هذه المعادلة =SUMPRODUCT(($C$2:$C$100<>"")*($B$2:$B$100<>""))1 point
-
طبعا ممكن عملها بالتنسيق الشرطي ..... حاول من باب الفائدة !!!!!!!!! ويمكن دمج الكودين في كود واحد ......... حاول من باب الفائدة !!!!!!!!!1 point
-
بعد اذن اخي بن علية رب هذه الدالة Option Explicit Function Text_in(rng As Range) With CreateObject("VbScript.RegExp") .Global = True .Pattern = "([\u0621-\u064A]+)" If Not (.Test(rng.Value)) Then _ Text_in = vbNullString: Exit Function Text_in = .Execute(rng.Value)(0) End With End Function الملف مرفق separate_names.xlsm1 point
-
السلام عليكم تم عمل المطلوب في الملف المرفق... بن علية حاجي فصل الاسم عن الرقم الملتصق به.xlsm1 point
-
1 point
-
اخي العزيز abdulmajid انتظرني قليلا انني اعمل عليه انظر للمرفق / وضعت صلاحيات المستخدم داخل النموذج ويمكنك تغيير مكانها اووضعها في نموذج منقصل او اخفائها اعلمنا النتائج q.rar1 point
-
استخدمت كود اخى @ابو البشر فى حدث عند تحريك القرص للنموذج الفرعى واشتغل تمام جزاه الله خيرا مثال2019.rar1 point
-
السلام عليكم وضعت هذه المعلومات أسفل جدول القائمة (في معادلة واحدة على أساس أن عدد الصفوف في اللجنة الواحدة لا يتجاوز 2)... أرجو أن يفي الغرض المطلوب... ملاحظة : تم التعديل على بعض تنسيقات الملف... بن علية حاجي لجان الإختبارات.xlsm1 point
-
وعليكم السلام-موضوعك ليس بالسهل او الهين لأ تستعجل عليه فهو من الموضوعات الصعبة وانت لا تعرف مدى انشغال الأساتذة فدائما وابدا التمس العذر لهم1 point
-
اخي الكريم اهلا وسهلا جرب المرفق او انسخ الماكرو وضعه في ملفك لعله ما تريد Sub imrimer_tous() Dim sh As Worksheet Application.ScreenUpdating = False For Each sh In ThisWorkbook.Worksheets If sh.Name <> "رئيسة" Then GoTo 1 sh.Range("a1:h15").PrintOut 1: Next sh Application.ScreenUpdating = True End Sub طباعة جميع الشواهد.xlsm1 point
-
والآن الى الكنز المخزون في صفحة كود الاكسس ، والذي يحتوي على جميع اوامر الاكسس ، و VBA ، و..... افتح صفحة الكود: . إما تضغط على الايقونه الموضحة بالدائرة الحمراء في الصورة اعلاه ، او تضغط على الزر F2 في لوحة المقاتيح ، وستظهر لك هذه الشاشة: . في الشاشة التاليه: 1. اختر اي الاوامر تريد ، VBA او اكسس او ... ، فسترى انواع الاوامر المتوفرة لها في النافذة 2 ، انا اخترت VBA ، 2. ثم اختار نوع الامر الذي تريده ، انا مثلا اردت جميع اوامر التاريخ والوقت ، فسترى جميع اوامر التاريخ والوقت في النافذة 3 ، 3. اختار الامر الذي تريده وانقر عليه ، انا مثلا اخترت الامر DateAdd ، فسترى في الاسفل (4) طريقة كتابة الامر : . وتستطيع كتابة اي امر تريد في خانة البحث (Recordset مثلا) ، وستحصل على جميع الاوامر التابعة له وإخواننا الصعايدة على راسنا جعفر1 point
-
الى هنا والحديث كله عن API ، ولكن استخدام الوحدات النمطية بشكل يومي يتعدى هذه المعلومة ، فمعظم برامجنا تحتاج الى حساب او معادلات او ... ، فهنا يأتي الوحدة النمطية ، وبالذات عند مناداتها من الاستعلام (او النموذج او التقرير)، ففي الاستعلام قد تكون محتاج الى اجراء عملية حسابية لحقل معين ، وقد تكون خطوات هذه العملية كثيرة ، ولا يمكنك عملها في سطر واحد في الاستعلام ، مثلا: الحقل items في الجدول tbl_AHF يحتوي على 3 معلومات مكررة وهي A, H, F نريد ان نقسم الحقل qty على عدد معين (يعتمد على قيمة الحقل items) ، نقسم qty على 7 ، اذا كانت قيمة items تساوي A ، نقسم qty على 6 ، اذا كانت قيمة items تساوي H ، نقسم qty على 5 ، اذا كانت قيمة items تساوي F ، هنا من الصعوبة ان نضع كود العملية كلها في الاستعلام في سطر واحد ، واذا وضعناه ، فلن نستطيع تعديله بسهولة لاحقا ، لأنه سيكون معقدا ، فالطريقة المثلى هنا ، هي عمل وحدة نمطية ، وارسال قيم الحقول items , qty اليها ، وعمل الكود بها ، واسترجاع النتائج منها ، الوحدة النمطية ستكون هكذا: Function Get_Values(i, q) 'i = items 'q = qty If i = "A" Then Get_Values = q / 7 ElseIf i = "H" Then Get_Values = q / 6 ElseIf i = "F" Then Get_Values = q / 5 End If End Function . والاستعلام يكون بهذه الطريقة: . والنتيجة: . وهنا نلاحظ من النتيجة ان تنسيقها للجهة اليسار ، مما يعني ان النتيجة نص وليست رقم ، لذا نرجع للوحدة النمطية (ودون المساس بالاستعلام) ونجري عليها التعديل المطلوب ، وبكل سهولة ، لتغيير النتيجة من نص الى رقم ، وتصبح الوحدة النمطية: Function Get_Values(i, q) As Double 'i = items 'q = qty If i = "A" Then Get_Values = q / 7 ElseIf i = "H" Then Get_Values = q / 6 ElseIf i = "F" Then Get_Values = q / 5 End If End Function . والنتيجة جعفر 258.modulesANDcommands.mdb.zip1 point
-
api اختصار application programming interface بالعربي برمجة واجهة التطبيقات وبالبلدي: هي دوال تحاكي الويندوز ! مثلا هناك اوامر يحتاجها المبرمج وهذا الامر اصلا واحد من مكتبات الويندوز على شكل دالة ! وكل مكتبة في الويندوز بها دوالها مغلفة ! فاروح انادي الدالة هذه بشرط ذكر اسم مكتبتها ! بمعنى هذه الدالة يستخدمها الويندوز وانت كمان تستخدمها خاصة اذا بتحاكي شي خارج برنامجك والذي لن يستطيع برنامجك يفهم اللغة للتخاطب ! فمثلا اغلاق ويندوز ! اروح انادي الدالة الخاصة بهذا مع ذكر مكتبة وجودها بها ! فانت ذهبت تخاطب برامج اخرى بهذه الدالة لقصور برنامجك في التخاطب ! وقال لك الاكسس اذا عايز تنادي حاجة زي كدا لابد تحطها لي في وحدة نمطية ! بمعنى لو عايز اضيف سجل في جدول مش معقوله انادي دالة api لانهم الويندوز مش حيفهم انت عايز ايه ! فقال لك ياعمي انا شغلت لك الاكسس واموركم الداخلية خلصوها مع بعض ! والاكسس حيزعل ويقول انت رايح للويندوز في امر زي كدا ! انا لدي دوالي وكائناتي اللي تعمل الحاجة دي ! اما لو فيه حاجة ما اقدرش عليها روح لمكتبات الويندوز وخذ اللي انت عايزه وهاتها لي في وحدة نمطية عامة ! ممكن يخطر في بالك عايز افتح الاكسل من الاكسس ! لو فكرت قليلا اكيد هناك دالة api بتعمل كذا لانه الويندوز بيعملها وهو فتح وتشغيل الاكسل ! بس هنا الاكسس برضه بيعمل الحاجة بس عايز منك ان تضيف مرجع في المراجع او تبحث وتتعلم ويمكن فيه دالة في الاكسس بتعمل كذا ! باختصار api دوال كثيرة جدا بحجم مكتبات الويندوز عليك معرفة اسمها ومكتبتها ونوع متغيراتها الممررة لها ومكان وجودها لكي تستطيع استخدامها ! لاحظ انه لو شغلت الاكسس على غير ويندوز مش حيفهم عليها ! بل لاحظ كيف انه عند تغير اصدارات الويندوز عليك مراجعة شكل الدالة الجديد ! بمعنى ابتعد عنها الا للضرورة !1 point
-
1 point
-
أخى الكريم جرب الملف المرفق لعله المطلوب وتقبل منى وافر الاحترام والتقدير 12-07-2014iii.rar1 point