اذهب الي المحتوي
أوفيسنا

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

  1. jjafferr

    jjafferr

    أوفيسنا


    • نقاط

      11

    • Posts

      9,814


  2. AbuuAhmed

    AbuuAhmed

    الخبراء


    • نقاط

      6

    • Posts

      976


  3. Moosak

    Moosak

    أوفيسنا


    • نقاط

      6

    • Posts

      1,997


  4. متقاعد

    متقاعد

    الخبراء


    • نقاط

      5

    • Posts

      583


Popular Content

Showing content with the highest reputation on 27 نوف, 2022 in all areas

  1. اتفق مع اخي جعفر لذا ذكرت عدة مرات وجوب وجود جدول للقيم الثابتة للبرنامج ووجود نموذج يخدم هذا الجدول مستخدم البرنامج يتعامل مع النماذج فقط وحتى التقارير يكون التعامل من النماذج او من خلال القوائم في حال وجودها وجهة نظر غير ملزمة تحياتي
    3 points
  2. والاهم ان المستخدم ما يرجع للمبرمج لما يريد اضافة او تغيير في النصوص 🙂 جعفر
    3 points
  3. اتفق مع اخي موسى 🙂 ولكن الافضل عمل جدول وادخال هذه البيانات (وغيرها في المستقبل) في حقل ، وحقل آخر للرقم ، ومن ثم استخدام الاستعلام او دالة لقراءة النصوص وتحويلها لارقام 🙂 جعفر
    3 points
  4. شكرا جزيلا على النسخة جعفر
    2 points
  5. وهذه هي الدالة التي ذكرتها لك بشكل مبدأي : Public Function ClassAndSectionAsNumber(strClass As String, strSection As String) As String Dim ClassNumber, SectionNumber Select Case strClass Case Is = "الأول الإبتدائي": ClassNumber = 1 Case Is = "الثاني الإبتدائي": ClassNumber = 2 Case Is = "الثالث الإبتدائي": ClassNumber = 3 Case Is = "الرابع الإبتدائي": ClassNumber = 4 Case Is = "الخامس الإبتدائي": ClassNumber = 5 Case Is = "السادس الإبتدائي": ClassNumber = 6 Case Else: ClassNumber = "Undefined" End Select Select Case strSection Case Is = "أول": SectionNumber = 1 Case Is = "ثاني": SectionNumber = 2 Case Is = "ثالث": SectionNumber = 3 Case Is = "رابع": SectionNumber = 4 Case Is = "خامس": SectionNumber = 5 Case Is = "سادس": SectionNumber = 6 Case Else: SectionNumber = "Undefined" End Select ClassAndSectionAsNumber = "(" & SectionNumber & "/" & ClassNumber & ")" End Function ويمكنك تطبيقها بكتابة اسم الدالة ثم الفصل ثم الشعبة وستعطيك النتيجة النهائية هكذا : 🙂 (1): ClassAndSectionAsNumber("الثاني الإبتدائي","خامس") النتيجة: (5/2) -------------------------------------------------------------------------- أو هكذا : (2) ClassAndSectionAsNumber(Me.ClassTxt,Me.SectionTxt)
    2 points
  6. السلام عليكم أخوتي في هذا المنتدى العريق لدي حقل " اليوم "في تقرير جدول الامتحانات حيث يتكرر في اليوم الواحد اكثر من مادة دراسية لأداء الامتحان وبالتالي يتكرر اليوم أمام كل مادة اريد ان لا يتكرر اليوم ويأخذ نفس المساحة الخاصة أمام المادتين مثل دمج حقلين في الوورد كما هو مرفق بالصورة لذا أرجو حقل اليوم في التقرير بالقاعدة المرفقةيكون مثل صورة الوورد المرفقة هل هناك كود ينفذ ذلك أي كلما تكرر اليوم يتم دمجه كحقل واحد بالتقرير أمام المادتين وجزاكم الله خيرا جدول الامتحانات 2023.mdb
    1 point
  7. بسم الله الرحمن الرحيم مع بعض النهاردة هانتعلم الخدع البصرية في اليوزرفورم بطريقة بسيطة باستخدام Image Ctrl استخدمت مثال للشرح Dark Mood App Officana قم بتصميم الشكل بواسطة اي برنامج من برامج تحرير الصور او البوبوبينت بشرط ان تكون بنفس المقاسات مع اختلاف الالوان وفي اليوز نضيف Image Ctrl الملف بسيط ولا يحتوي الا اكواد الحركة للاداء معاينة الفورم https://youtu.be/VGL00cnLVF8 الملف بالمرفقات Dark Mood App Officana.xlsm وبالتوفيق للجميع
    1 point
  8. هذا الكود قبل أن ينشأ موقع أوفيسنا أو مع بدايته 🙂 وكثير يسيئ استخدامه لأن البيانات تحتاج إلى ترتيب أولا ، فلا بد من إضافة الأب قبل الإبن حتى يتم تحميل الإبن وإلا ستفشل عملية تحميل الإبن. رجعت لقاعدة البيانات خاصتك وفي جدول الموضوعات ولم أعرف أحدد الأب من الإبن "ضاعت الأنساب" 🙂 ، فهل تستطيع توضح لي مثال/سطر واحد وكيفية ربط الإبن بالأب؟. كذلك إذا الشجرة فقط للعرض ليس بها إضافة ولا تعديل ولا حذف فيفضل عدم استخدام النوع dbOpenDynaset بل يستخدم dbOpenSnapshot
    1 point
  9. وعليكم السلام ورحمة الله وبركاته 🙂 ولا واحد من القائمة اعلاه موجود في ملفك ، فلا نستطيع مساعدتك !! ويجب عليك اعادة النظر في جدولك ، ويجب تقسيمه الى جدولين او ثلاثة تحتوي جميعها على الحقل EmpCode ، ثم ربط الجداول بحقل EmpCode في استعلام ، وعرض النتائج التي تريدها 🙂 وإلا : 1. جدولك سيكون بطيء لما تصبح البيانات التي به تتعدى 10 الآف سجل ، 2. لن يمكنك ادخال بيانات في جميع الحقول ، فمجموع حروف اي سجل في جدول لا تتعدى 4000 حرف ، واليك هذه المعلومة من مايكروسوفت: . من اعدادات الجدول هنا: . جعفر
    1 point
  10. السلام عليكم 🙂 انزلت المرفقين ، ولكن الشجرة ما اشتغلت عندي 🙂 بس الحمدلله تجاربي السابقة افادتك 🙂 وما العيب في هذا الكود ، فهو الاسرع في جلب البيانات 🙂 ولكن تأكد في نهاية الكود ان تفرغ الذاكرة العشوائية من هذه البيانات عن طريق: rst.close: set rst=nothing جعفر
    1 point
  11. السلام عليكم 🙂 انا استخدم هذه الوحدة النمطية: Option Compare Database Option Explicit '--------------------------------------------------------------------------------------- ' Procedure : EnableArrowsScroll ' Author : Daniel Pineault, CARDA Consultants Inc. ' Website : http://www.cardaconsultants.com ' Purpose : Enable using the up and down arrows to move between records on a ' continuous form ' Req'd Refs: None ' The Form's Key Preview property must be set to True for this code to work. ' ' Input Variables: ' ~~~~~~~~~~~~~~~~ ' iKeyCode : Keycode from the source form from the KeyDown event ' frm : form object to apply the new behavior to ' ' Usage: ' ~~~~~~ ' KeyCode = EnableArrowsScroll(KeyCode, Me) 'This is placed in the KeyDown event ' 'Dont forget to set the Key Preview property to Yes ' ' Revision History: ' Rev Date(yyyy/mm/dd) Description ' ************************************************************************************** ' 1 2011-07-07 Initial Release ' 2 2017-04-08 Added DefaultView check '--------------------------------------------------------------------------------------- Public Function EnableArrowsScroll(ByVal iKeyCode As Integer, frm As Access.Form) As Integer On Error GoTo Error_Handler If frm.DefaultView = 1 Then 'Only process for Continuous forms Select Case iKeyCode Case vbKeyDown ' If CurrentRecord <> RecordsetClone.RecordCount Then 'Restrict to existing records If frm.NewRecord = False Then 'Allow going to new record for data entry DoCmd.GoToRecord , , acNext End If EnableArrowsScroll = 0 Case vbKeyUp If frm.CurrentRecord <> 1 Then DoCmd.GoToRecord , , acPrevious End If EnableArrowsScroll = 0 Case Else EnableArrowsScroll = iKeyCode End Select Else EnableArrowsScroll = iKeyCode End If Error_Handler_Exit: On Error Resume Next If Not frm Is Nothing Then Set frm = Nothing Exit Function Error_Handler: If Err.Number <> 2105 Then MsgBox "The following error has occurred" & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: EnableArrowsScroll" & vbCrLf & _ "Error Description: " & Err.Description & _ Switch(Erl = 0, "", Erl <> 0, vbCrLf & "Line No: " & Erl) _ , vbOKOnly + vbCritical, "An Error has Occurred!" End If Resume Error_Handler_Exit End Function . وتناديها على حدث "الزر الاسفل" للنموذج ، هكذا Private Sub Form_KeyDown(KeyCode As Integer, Shift As Integer) On Error GoTo Error_Handler KeyCode = EnableArrowsScroll(KeyCode, Me) Error_Handler_Exit: On Error Resume Next Exit Sub Error_Handler: MsgBox "The following error has occurred" & vbCrLf & vbCrLf & _ "Error Number: " & Err.Number & vbCrLf & _ "Error Source: Form_KeyDown" & vbCrLf & _ "Error Description: " & Err.Description & _ Switch(Erl = 0, "", Erl <> 0, vbCrLf & "Line No: " & Erl) _ , vbOKOnly + vbCritical, "An Error has Occurred!" Resume Error_Handler_Exit End Sub . جعفر 1532.UseArrow.mdb.zip
    1 point
  12. لقد قمت بالبحث عن أصل الكود ووجدته على أحد المواقع الأجنبية ووجدت دالة GetTickCount التي لو كانت موجودة ضمن مثال السائل لانتهى الموضوع من "زمان" وانتهت معه هذه المعاناة. حتى لا يتوه السائل أضفت صناديق بنفس الأسماء وبدلت أسماء باقي المكونات أيضا. أعتقد الآن الموضوع منتهي ولا حاجة لانتظار الإجابة. نسخة مع التحية للأستاذ @jjafferr StopwatchTimer_01.rar
    1 point
  13. في خصائص النموذج في حدث عند مفتاح اسفل ضع الامر On Error Resume Next Select Case KeyCode Case Is = vbKeyDown DoCmd.GoToRecord , , acNext Case Is = vbKeyUp DoCmd.GoToRecord , , acPrevious End Select ثم ايضا في خصائص النموذج مفتاح معاينة غير الى نعم اعتذر لعدم التجربة لعدم توفر اكسس حاليا ولكن من المتوقع ان يؤدي الغرض اخيرا العنوان مخالف لقواعد المشاركة بالموقع حيث يتطلب ان يدل العنوان بشكل واضح عن محتوى المشاركة عدم استخدام عناوين مثل عاجل او ... الخ تحياتي
    1 point
  14. 1 point
  15. نعم أخي العزيز .. 🙂 يمكن تطبيقها على النموذج مباشرة .. أو في الاستعلام ( نفس الملف المرفق - الاستعلام هنا مصدر بيانات النموذج ) .. أو عملها كحقل محسوب في الجدول ( لا ينصح به ) .. الدرجة الأعلى.rar
    1 point
  16. وذلك لتلافي إدخال الأسماء بشكل خاطئ 👍🌹
    1 point
  17. وعليكم السلام ورحمة الله وبركاته أخي TQTHAMI 🙂 اطلعت على المرفق وقرأت المطلوب عدة مرات .. ولكن عجزت عن فهم ماتريده بالضبط 😅 تختار من القائمة فتتغير صور الأزرار ؟ وعند الاختيار من القائمة أي زر الذي تريد تتغيير صورته ؟ أم تضغط الزر فتتغير صور الأزرار الأخرى ؟ أم ماذا بالضبط ؟! لديك 6 أزرار .. والصور عددها 5 .. !! 🙃
    1 point
  18. الفلكيون لهم تقسيمات أخرى: فبعد الدقيقة: - ثانية وهي جزء من 60 من الدقيقة - ثالثة وهي جزء من 60 من الثانية وهكذا لو أراد أحد التوسع يمكنه استخدام رابعة وخامسة أيضا وكلها أجزاء من 60. فأنت بمثالك لك ثلاث خيارات: - ميلي أو ميللي ثانية وهي جزء من 1000 من الثانية وهي الأفضل. - ثالثة وهي جزء من 60 من الثانية. - كسر من 100 من الثانية أي للقيمة ثانية ونصف تظهر هكذا "01.50" ثانية
    1 point
  19. جرب هذا الكود بعد التنقيح ولا تنسى أن تقرأ ملاحظاتي في مشاركاتي السابقة. Private Sub Form_Timer() Dim Hours As String Dim Minutes As String Dim Seconds As String Dim MilliSec As String Dim ElapsedMilliSec As Long ElapsedMilliSec = Me.Text15.Value - (GetTickCount() - StartTickCount) + TotalElapsedMilliSec If ElapsedMilliSec > 0 Then Hours = Format((ElapsedMilliSec \ 3600000), "00") Minutes = Format((ElapsedMilliSec \ 60000) Mod 60, "00") Seconds = Format((ElapsedMilliSec \ 1000) Mod 60, "00") MilliSec = Format((ElapsedMilliSec Mod 1000), "000") Me!ElapsedTime = Hours & ":" & Minutes & ":" & Seconds & ":" & MilliSec Else Me.TimerInterval = 0 TotalElapsedMilliSec = 0 Me!ElapsedTime = "00:00:00:00" Me.[test Name].BackColor = RGB(225, 0, 0) PlaySound Application.CurrentProject.Path & "\sounds\test.WAV" DoCmd.Restore Me!btnStartStop.Caption = "start" Me.btnReset.Enabled = True End If End Sub
    1 point
  20. بالصدفة حصلت معاي مشكلة ربما تشبه ما قاله الأخ @qathi وبالتحري 🙂 وجدت المشكلة في الحصول على عدد السجلات والذي نحصل عليه من: Me.RecordsetClone.RecordCount حيث يعطي أحيانا العدد واحد بدلا من المجموع، وكان حلي للمشكلة في حدث عند فتح النموذح بهذه الطريقة: Private Sub Form_Open(Cancel As Integer) On Error Resume Next DoCmd.GoToRecord , , acLast DoCmd.GoToRecord , , acFirst End Sub والآن أرفع لكم نسخة أخرى بعد التعديل. تطبيق لون_08.accdb
    1 point
  21. العين ما تعلى على الحاجب أستاذنا العزيز اساتذتنتا القدامى "عبق الماضي" لهم مكانة خاصة ولا يهون أصحاب القلوب الطيبة.
    1 point
  22. نعم يا ابا جودي الفكرة ليست جديدة مع ذلك قالت العرب الافكار ملقاه كالحجارة على قارعة الطريق يعرفها العربي والعجمي والبدوي والحضري ولكن الشأن في جودة السبك. كثير من الاختراعات التي غيرت وجه العالم لم تكن من بنات افكار من اخترعوها وانما كانت لديهم الشجاعة والعزم والهمة لالتقاط تلك الافكار ووضعها محل التنفيذ . احسنتم جميعا ونفتخر بامثالكم تحياتي
    1 point
  23. تفضل 4 قوالب / الصفحة (A4) 154_3.rar
    1 point
  24. شكرا جزيلا جدا بس ياريت يكون القوالب عده مطبوعه في ورقة واحدة وليس كل قالب مطبوع في ورقه واحده
    1 point
×
×
  • اضف...

Important Information