بحث مخصص من جوجل فى أوفيسنا
Custom Search
|
كل الانشطه
- الساعة الأخيرة
-
وعليكم السلام ورحمة الله وبركاته .. أهلاً أخي أمين ، وبارك الله بك على هذه المبادرة الجميلة .. بدايةً ، واعلم أنك قد طرحت فكرة من تطبيقك وخطوة بخطوة ، وهو شيء جميل شعورك بأنك استطعت نقل الفكرة وتطبيقها ونجاحها معك . ولذا ومستقبلاً ومن باب التطوير لك ، إليك نصيحة قد تكون الخطوة الأولى لبناء مشروع سليم . تتلخص بما يلي :- إستعمال المسميات العربية للحقول أو العناصر أو المكونات بشكل عام ( حقول ، جداول ، استعلامات ، مربعات نص أو أزرار .... إلخ ) . استعمال المسافات بين أسماء المكونات التي تتكون من مقطعين أو أكثر ، وهنا لاحظت إنك تلافيت هذه النقطة باستخدامك الشرطة السفلية أو العادية ( ـ ، - ) في معظم الأحيان . حاول دائماً مستقبلاً - ( إن شاء الله ) - أن يكون لأسماء العناصر دلالة عليها . بدلاً من استعمال الأسماء الإفتراضية مثل text0 , text1 أو أمر12 ، أمر45 ... إلخ . كي تسهل عليك الإستدلال عليها دون الحاجة للتنقل بين هنا وهناك لمعرفة وتذكر و كتابة أسمائها عند الإستدعاء داخل الأكواد . لاحظت أيضاً أنك استخدمت سطر VBA لأيقاف وتشغيل التنبيهات عند حذف سجل من الجدول ، وهذه نقطة إيجابية وجميلة منك انك استخدمتها ، بدلاً من الرسائل المزعجة التي يظهرها آكسيس عند حذف أو إضافة أو تعديل سجل أيضاً لاحظت أنك قمت بتبسيط الأمور على من يريد الإستفادة من فكرتك ، فالأكواد بسيطة جداً ومفهومة و واضحة ، ولا تحتاج ترجمة حتى يتقنها من يريد الإتقان والفهم . شكراً لك على مشاركتك الجميلة ، ونأمل منك أن لا تقطعنا من أفكارك التي تساعد بها من يحتاجها
-
- Today
-
الى كل المبتدئين أمثالي بحثت عن فكرة مدير مستخدمين بشكل احترافي تتناسب مع معلوماتى البسيطة فى اكسيس لأجد على YOUTUBE.THE BEST مثالاً حاولت تطبيقه بشكل مبسط ( أعتقد ذلك ) ، فأحببت أن ارفعه على هذا المنتدى عرفاناً و رد جميل للمنتدى و اصحاب العلم و المعرفة. المرفق مبنى على جدول واحد TBL_USERE بالإضافة إلى 4 نماذج ( مفتوحة المصدر - و بدون اخفاء حقول حتى يسهل توصل الفكرة ) 1- F_LOGIN : الخاص بمدير المستخدمين. 2-F_MAIN : الشاشة الرئيسية مضاف عليها شاشة بيانات العملاء كمثال تطبيقي. 3-F_USERS : شاشة اضافة و حذف مستخدم. 4 - F_CHANGE_PASS : شاشة تغير كلمة المرور. أتمنى أن أكون وُفقت ، وذلك بوضع مرفق ينال طموح أمثالي ( المبتدئين ). و على اصحاب العلم و المعرفة التوجيه و النصح و التعديل ، حتى يستفيد الجميع login.accdb
- Yesterday
-
⏳ باقي من الوقت : 7 أيام حتى نهاية التحدى الأول ⏳ باقي من الوقت : 7 أيام حتى نهاية التحدى الأول
-
فعلاً هذا هو المطلوب بارك الله فيك مع شكري وتقديري للأساتذة الكرام الذين كانوا لهم دورٌ بارزٌ في المساعدة والتوجيه
-
وهذه فكرة تجمع بين عرض التكرارات التي يتنافس فيها الطلاب حسب رغبتك .. Data_Base_Rep.zip
-
السلام عليكم ورحمة الله وبركاته كيف استطيع تغيير الترقيم للصفحات ليبدا من 11 بدلا من 1 مثل الوورد هل هناك طريقة ى الاكسل لهذا الطلب ولكم جزيل الشكر
-
ارسال ايميل جيميل ⭐ هدية ~ إرسال بريد إلكتروني من Gmail الى أي إيميل ⭐
Foksh replied to Foksh's topic in قسم الأكسيس Access
كلامك صحيح وسليم 100% ، لأنك تستعمل واجهة الموقع باللغة الإنجليزية ، فسوف تكون المحاذاة تلقائياً من اليسار لليمين ، و99.999% من المواضيع هنا تكتب ويساق فيها الحديث باللغة العربية ، لذا بدل واجهة الموقع الى العربية من أسفل الصفحة ، وستجد أن المشكلة تم حلها 😉 -
هذا ما يظهر عندي كمثال و هذا مثال أخر اما ما ارفقته انا كصورة في البداية فهو الشكل الصحيح للكلام بعد تعديل الاتجاه و انا لا اعرف كيف اظهره هنا في المنتدي كما اوضحت في أول صورة لي
-
fadi2000 joined the community
-
بسيطة أخي الكريم .. يعني انت تريد إظهار الطلاب الذين في المركز الرابع مثلاً جميعهم بالتمييز بينهم ( متكرر ) !!!!!!! انا لم أقترب من الدالة التي قمت بإنشائها ، حرصاً على أنه قد يكون مطلبك .. لكن بعد التوضيح ، إليك التعديل الذي تم على الدالتين أولاً :- Public Function fncTrteeb() Dim rst As Object Dim RankNumber As Long ' تصفير الحقل أولاً CurrentDb.Execute "UPDATE Q_top10 SET trteeb = Null" Set rst = CurrentDb.OpenRecordset("SELECT * FROM Q_top10 ORDER BY average DESC, StudentID ASC", 2) If rst.RecordCount = 0 Then Exit Function rst.MoveFirst RankNumber = 0 Do While Not rst.EOF And RankNumber < 10 RankNumber = RankNumber + 1 rst.Edit rst!trteeb = GetArabicRank(RankNumber) rst.Update rst.MoveNext Loop rst.Close Set rst = Nothing End Function Public Function GetArabicRank(ByVal n As Long) As String Select Case n Case 1: GetArabicRank = "الأول" Case 2: GetArabicRank = "الثاني" Case 3: GetArabicRank = "الثالث" Case 4: GetArabicRank = "الرابع" Case 5: GetArabicRank = "الخامس" Case 6: GetArabicRank = "السادس" Case 7: GetArabicRank = "السابع" Case 8: GetArabicRank = "الثامن" Case 9: GetArabicRank = "التاسع" Case 10: GetArabicRank = "العاشر" Case Else GetArabicRank = "المركز " & n End Select End Function والإستعلام سيصبح بهذاالشكل :- SELECT TOP 10 S.StudentID, S.StudentName, S.ClassName, S.SETNO1, F.SemesterID, F.TotalSum, F.average, F.Grade, GetArabicRank(( SELECT COUNT(*) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND (F2.average > F.average OR (F2.average = F.average AND S2.StudentID < S.StudentID)) ) + 1) AS RankText FROM TBL_Students AS S INNER JOIN TBL_Final1 AS F ON S.StudentID = F.StudentID WHERE F.SemesterID = [أدخل رقم الفصل] AND S.ClassName = [أدخل اسم الصف] ORDER BY F.average DESC , S.StudentID; في الاستعلام القديم كان المنطق هو ( احسب كم طالب معدله أكبر مني ) ؟؟ فإذا كان هناك طالبان معدلهما متساوٍ ( مثلاً 91% ) ، فإن كلاهما سيجد نفس العدد كترتيب من الطلاب المتفوقين عليهما ، وبالتالي يأخذان نفس الرقم ( مثلاً المركز 2 ) ، ثم يقفز الترتيب للمركز 4 مباشرة . أما في الاستعلام المعدل ، إذا تساوى طالبان في المعدل ، انظر لرقم الطالب ؛ صاحب الرقم الأصغر يعتبر هو الأسبق . وبالنسبة لي هذا غير منطقي ، فلا بد من شرط ثاني لتحديد المنافس على نفس المركز !!!! 💥 وفي هذا الموضوع هنا ، قد تطرقنا مع مشاركة أخي @ابو جودي لنفس الفكرة تقريباً . وملفك بعد التعديل :- Data_Base.zip
-
SELECT TOP 10 S.StudentID, S.StudentName, S.ClassName, S.SETNO1, F.SemesterID, F.TotalSum, F.average, F.Grade, /* الترتيب الصحيح بدون قفزات */ (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 AS RankOrder, /* تحويل الرقم إلى نص */ Switch( (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 1, "الأول", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 2, "الثاني", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 3, "الثالث", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 4, "الرابع", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 5, "الخامس", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 6, "السادس", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 7, "السابع", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 8, "الثامن", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 9, "التاسع", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 10, "العاشر" ) AS RankText, /* إضافة كلمة "متكرر" عند وجود أكثر من طالب بنفس المعدل */ Switch( (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 1, "الأول", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 2, "الثاني", (SELECT COUNT(DISTINCT F2.average) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 = 3, "الثالث" ) & IIf( (SELECT COUNT(*) FROM TBL_Final1 AS F3 WHERE F3.SemesterID = F.SemesterID AND F3.average = F.average) > 1, " متكرر", "" ) AS RankFinal FROM TBL_Students AS S INNER JOIN TBL_Final1 AS F ON S.StudentID = F.StudentID WHERE F.SemesterID = [أدخل رقم الفصل] AND S.ClassName = [أدخل اسم الصف] ORDER BY F.average DESC, S.StudentID ASC;
-
تفضل الصفحة كلها مع التعليقات بالانجليزية . Option Compare Database Option Explicit Public Enum NavAction navFirst = 1 navPrevious = 2 navNext = 3 navLast = 4 navNew = 5 End Enum '============================= ' Safe navigation with messages '============================= Public Sub NavigateRecord(frm As Form, action As NavAction) Dim rs As DAO.Recordset Set rs = frm.RecordsetClone If rs.RecordCount = 0 Then Exit Sub rs.MoveLast Select Case action Case navFirst If frm.CurrentRecord = 1 Then MsgBox "This is the first record", vbInformation Else DoCmd.GoToRecord , , acFirst End If Case navPrevious If frm.CurrentRecord = 1 Then MsgBox "This is the first record", vbInformation Else DoCmd.GoToRecord , , acPrevious End If Case navNext If frm.CurrentRecord >= rs.RecordCount Then MsgBox "This is the last record", vbInformation Else DoCmd.GoToRecord , , acNext End If Case navLast If frm.CurrentRecord >= rs.RecordCount Then MsgBox "This is the last record", vbInformation Else DoCmd.GoToRecord , , acLast End If Case navNew DoCmd.GoToRecord , , acNewRec End Select rs.Close Set rs = Nothing UpdateNavUI frm End Sub '============================= ' Update counter + buttons '============================= Public Sub UpdateNavUI(frm As Form) Dim rs As DAO.Recordset Set rs = frm.RecordsetClone If rs.RecordCount = 0 Then frm!TxtCount = "No records found" Exit Sub End If rs.MoveLast '===== Record counter ===== If frm.NewRecord Then frm!TxtCount = "New record" Else frm!TxtCount = "Record " & frm.CurrentRecord & " of " & rs.RecordCount End If '===== Disable / Enable buttons ===== frm!CmdFirst.Enabled = (frm.CurrentRecord > 1) frm!CmdPrevius.Enabled = (frm.CurrentRecord > 1) frm!CmdNext.Enabled = (frm.CurrentRecord < rs.RecordCount) frm!CmdLast.Enabled = (frm.CurrentRecord < rs.RecordCount) rs.Close Set rs = Nothing End Sub تفضل الصفحة كلها مع التعليقات بالفرنسية . Option Compare Database Option Explicit Public Enum NavAction navFirst = 1 navPrevious = 2 navNext = 3 navLast = 4 navNew = 5 End Enum '============================= ' Navigation sécurisée avec messages '============================= Public Sub NavigateRecord(frm As Form, action As NavAction) Dim rs As DAO.Recordset Set rs = frm.RecordsetClone If rs.RecordCount = 0 Then Exit Sub rs.MoveLast Select Case action Case navFirst If frm.CurrentRecord = 1 Then MsgBox "C'est le premier enregistrement", vbInformation Else DoCmd.GoToRecord , , acFirst End If Case navPrevious If frm.CurrentRecord = 1 Then MsgBox "C'est le premier enregistrement", vbInformation Else DoCmd.GoToRecord , , acPrevious End If Case navNext If frm.CurrentRecord >= rs.RecordCount Then MsgBox "C'est le dernier enregistrement", vbInformation Else DoCmd.GoToRecord , , acNext End If Case navLast If frm.CurrentRecord >= rs.RecordCount Then MsgBox "C'est le dernier enregistrement", vbInformation Else DoCmd.GoToRecord , , acLast End If Case navNew DoCmd.GoToRecord , , acNewRec End Select rs.Close Set rs = Nothing UpdateNavUI frm End Sub '============================= ' Mise à jour du compteur + boutons '============================= Public Sub UpdateNavUI(frm As Form) Dim rs As DAO.Recordset Set rs = frm.RecordsetClone If rs.RecordCount = 0 Then frm!TxtCount = "Aucun enregistrement" Exit Sub End If rs.MoveLast '===== Compteur d'enregistrements ===== If frm.NewRecord Then frm!TxtCount = "Nouvel enregistrement" Else frm!TxtCount = "Enregistrement " & frm.CurrentRecord & " sur " & rs.RecordCount End If '===== Désactiver / Activer les boutons ===== frm!CmdFirst.Enabled = (frm.CurrentRecord > 1) frm!CmdPrevius.Enabled = (frm.CurrentRecord > 1) frm!CmdNext.Enabled = (frm.CurrentRecord < rs.RecordCount) frm!CmdLast.Enabled = (frm.CurrentRecord < rs.RecordCount) rs.Close Set rs = Nothing End Sub
-
omran2015 started following استخراج الطلبة العشرة الأوائل
-
بارك الله فيك وجزاك الله خيرا على حسن اهتمامك بالموضوع وردك الطيب الجميل ويجعلك من عتقائه من النار في هذا الشهر المبارك ولدي عدة ملحوظات وهى: 1/ مشكلة القفز في الترتيب ولو تلاحظ أن الترتيب يظهر هكذا 1 2 3 4 4 6 والمفروض يظهر 4 4 متكرر 5 6 وهكذا 2/ أتمنى تغيير المسميات إلى نص أقصد بدلا من 1.2.3 وهكذا أريده أن يكون: الأول الثاني الثالث إلى الترتيب العاشر 3/ ملاحظة تكرار الترتيب بحيث يكون مثلا: الأول الأول متكرر وهكذا
-
اهاااا ، بعد متابعة النتيجة ، وجدت أنه يأتيك بجميع الطلاب للفصل الأول والصف الثامن وعددهم 16 على سبيل المثال .. وأنت تريد فقط 10 جرب هذا الإستعلام التالي :- SELECT TOP 10 S.StudentID, S.StudentName, S.ClassName, S.SETNO1, F.SemesterID, F.TotalSum, F.average, F.Grade, ( SELECT COUNT(*) FROM TBL_Final1 AS F2 INNER JOIN TBL_Students AS S2 ON F2.StudentID = S2.StudentID WHERE F2.SemesterID = F.SemesterID AND S2.ClassName = S.ClassName AND F2.average > F.average ) + 1 AS RankOrder FROM TBL_Students AS S INNER JOIN TBL_Final1 AS F ON S.StudentID = F.StudentID WHERE F.SemesterID = [أدخل رقم الفصل] AND S.ClassName = [أدخل اسم الصف] ORDER BY F.average DESC, S.StudentID ASC;
-
Foksh started following استخراج الطلبة العشرة الأوائل و تعديل كود ازرار
-
وعليكم السلام ورحمة الله وبركاته .. جرب هذا المرفق بعد تثبيت التطبيقين المرفقين معه لدعم السحب من السكانر أو الفيدر Scanner 2 PDF.zip
-
بدايةً ، وعليكم السلام ورحمة الله وبركاته .. لديك نقطة واحد فقط كان عليك إدراكها . وهي إضافة الحقل ClassID من الجدول F ، وجعل الشرط [أدخل اسم الصف] له وليس للحقل ClassName من الجدول S . قبل تجربة المرفق ، جرب دون النظر للمرفق حتى تفهم المقصود من كلامي .. مع العلم أن ملفك يعمل معي بشكل سليم باستخراج الأوائل . إلا إن كان هناك نقطة لم تتوضح في شرحك 😀 Data_Base.zip
-
السلام عليكم اساتذتي في القاعدة المرفقة نموذج لللارشفة الالكترونية اتمنى وضع الكود المناسب على الازرار الخاصة بجلب الكتب من الماسح الضوئي والحاسبه وطباعتها مع زر معاينة المرفق بخانه مستقله على ان تكون الكتب المرفوعة بصيفة صوره او ملف Pdf مع التقدير الصادر والوارد.rar
-
ارسال ايميل جيميل ⭐ هدية ~ إرسال بريد إلكتروني من Gmail الى أي إيميل ⭐
Foksh replied to Foksh's topic in قسم الأكسيس Access
أين المشكلة لم أفهم بعد 😅 في البوست الأخير لي لم أر مشكلة في موضع الكلمات ، ولا حتى في الصورة التي ارفقتها .. لإذا كان اتجاه النص ومحاذاته من اليمين لليسار وكان يتخلله كلمات أنجليزية فستظهر بمكانها الصحيح 100% . ولكن وللتجربة اجعل النص عربي ولكن محاذاته واتجاهه من اليسار لليمين فستجد أن الكلمة الأنجليزية قد انتقلت لنهاية السطر بدلاً من بدايته مثلاً .. انظر الصورة للتوضيح أكثر -
جزاكم الله كل خير هل هناك حل لمشكلة ظهور الكلمات باللغة الانجليزية عند استخدمها داخل الجملة باللغة العربية لان عند استخدام اي كلمة انجليزية في وسط الجملة تظهر في المنتدي بشكل مختلف عما كتبه الكاتب و مثال على ذلك الصورة الاخيرة التي رفعتها و البوست السابق للمهندس فادي
-
السلام عليكم من جديد شكرا اخي ابو خليفة على مرورك و اجتهادك فتحت صفحة module و لكن للاسف وجدت ما كتب بالعربية يظهر كما في الصورة فهل من الممكن ان تكتبها لي بالفرنسية او الانجليزية حتى استطيع ان افهم اكثر و لكم جزيل الشكر
-
أريد استخراج الطلبــة العشرة الأوائل في استعلام Q_Top10_ByClass مع ملاحظة تكرار الترتيب علماً بأنه ثم إنشاء مديول لاحتساب الأوائل؛ ولكن لم أعرف كيف استدعيها في الاستعلام Data_Base.rar
- الاسبوع الماضي
-
almarwny started following سليم حاصبيا
-
للشكل الجمالي وبدون التدخل بأي شئ تفضل المرفق .ووافني بالرد. E G P_test-1.rar