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

jjafferr

أوفيسنا
  • Posts

    9,760
  • تاريخ الانضمام

  • تاريخ اخر زياره

  • Days Won

    396

مشاركات المكتوبه بواسطه jjafferr

  1. انا قلت لك:

    وطبعا الكود غير مجرب بالدقة ، لأنه ما عندنا شئ نقدر نجربه عليه

     

     

    وبدل ما تساعدنا وتسهل علينا بقاعدة بياناتك ، اضطررت ان اعمل قاعدة بيانات خاصة لك ، فقط لأوضح ،

    بعد التجربة ، اتضح ان هذا هو الكود الصحيح:

    call Form_Mfrm.Btn2_Click
    

    لاحظ في الصورة التالية:

    post-142414-0-18976200-1426277953_thumb.

     

     

    عندي نموذج رئيسي اسمه frm_1 والزر الذي عليه يعطي الرسالة الموضحة ،

    يوجد نموذج فرعي sfrm_1 داخل هذا النموذج ، ولما نضغط على الزر فيه ، فانه يطلق رسالة زر frm_1.

     

    الى هنا والكود حقك يشتغل ويتوقف ، ولن يشتغل على الخطوات التالية  :yes:

     

    اما الان ، فخلي النموذج frm_1 مفتوحا او مغلقا ،

    افتح frm_2 ، واضغط على الزر ، فانه سيطلق رسالة زر frm_1 كذلك  :yes:

     

    والكود في sfrm_1 و frm_2 هو نفسه بدون اي تغيير ، وهو الذي وضحته لك في اعلى هذه المشاركة.

     

     

    Private sub

    معناه ان الكود بداخل هذا الـ sub خاص بهذا النموذج  فقط ، ولا يستطيع اي نموذج آخر ان يرى محتواه ،

     

    Public sub

    معناه انه يسمح لجميع النماذج ان ترى الكود داخل هذا الـ sub ، واستعماله ، سواء كان النموذج مفتوحا او مغلقا  :yes:

     

     

    جعفر

    22.Click_Main_from_Sub.mdb.zip

    • Like 1
  2. وعليكم السلام شباب ، ممكن ادلو بدلوي   :smile:

     

    1. يجب ان تحول SUB الزر من Private الى Public:

    من
    
    Private Sub Btn2_Click()
    
    
    الى
    
    Public Sub Btn2_Click()
    

    بعدين تقدر تناديه هكذا:

    call Forms!Mfrm!Form_Btn2_Click
    

    وطبعا الكود غير مجرب بالدقة ، لأنه ما عندنا شئ نقدر نجربه عليه  :yes:

     

     

    جعفر

    • Like 1
  3. تفضل  :smile:

     

    طريقتين لعرض الصور:

    في النموذج نادي التقرير هكذا:

    DoCmd.OpenReport "rpt_Image2", acViewPreview
    

    وفي التقرير ، على حدث الطباعة ، عندك الاختيارين:

    Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    
        
        'but why do this, when we can read the info directly from the Form,
        'this is a much faster way
        Me.ImageFrame.PictureData = Forms!frm_1!ImageFrame.PictureData
        
        
    End Sub
    

    او

    Private Sub Detail_Print(Cancel As Integer, PrintCount As Integer)
    
        'we can read the picture from the File again, this way
        Me.ImageFrame.Picture = Application.CurrentProject.path & "\Photos\" & Forms!frm_1!no & ".jpg"
        
        
    End Sub
    

    وانا افضل الطريقة الاولى ، لأننا نقرأ الصورة من النموذج مباشرة :yes: ،

    بينما في الطريقة الثانية ، فاننا نطلب الصورة من مجلد الكمبيوتر (يعني انت طلبتها مرة للنموذج ، والان تطلبها للتقرير  :eek2: )

     

     

    جعفر

    21.طباعة.zip

    • Like 1
  4. وعليكم السلام أخي

     

    حاولت اساعدك ، ولكن مرفقك ما كان فيه بيانات  :eek2:

    ولا كان فيه مثال اقدر اطبقه عليه  :eek2:

     

    كود حساب الفرق بين تاريخين (موجود في الاكسس ، اذا ضغطت على F1 وانت في VBA):

    Function YMDDif(sDate1, sDate2)
    
        'sdate1 earliest date sdate2 later
    
        Dim iYear As Integer
        Dim iMonth As Integer
        Dim iDay As Integer
        Dim dInterim1 As Date
    
        iMonth = DateDiff("m", sDate1, sDate2)
        If Day(sDate1) > Day(sDate2) Then
            iMonth = iMonth - 1
        End If
        dInterim1 = DateAdd("m", iMonth, sDate1)
        iDay = DateDiff("d", dInterim1, sDate2)
        
        D = iDay
        M = iMonth Mod 12
        y = iMonth \ 12
    
        YMDDif = CStr(y) & " Years " & CStr(M) & " months " & CStr(D) & " days"
    End Function
    

    جعفر

  5. وعليكم السلام ورحمة الله وبركاته

     

    اعرض عليك عمل أخي علاء ابوالعلا (الله يعطيه الصحة والعافية ، ورحم الله والديه دنيا وآخرة ان شاء الله :smile: ) ، من منتدى الفريق العربي للبرمجة ، بإضافات مني  :smile:

     

    والعمل هو عبارة عن التنقل بين السجلات بعدد معين من السجلات في كل ضغطة زر:

     

    المربع رقم 1 هو من عمل أخي علاء ، والمربع رقم 2 من عملي ، مقتبسا فكرة أخي علاء:

    post-142414-0-67438400-1426235934_thumb.

     

     

    عملت نموذج مستمر ، واردت السجلات تنزل او تصعد صفحة كاملة (مثل Scroll up down) بطول النموذج ، وهذه النتيجة:

     

    إضغط على الصورة للحركة:

    post-142414-0-82075000-1426235930_thumb.

     

     

    ولفهم الكود ، رجاء ملاحظة الارقام:

    post-142414-0-32993300-1426235932_thumb.

     

     

    ومقارنتها بهذه الاسطر من الكود:

    post-142414-0-79463400-1426235933_thumb.

     

     

    وهذا هو الكود:

    Private Sub cmd_Next_Click()
    
        Form_Title_Bar_Height = 405
        Form_Navegation_Bar_Height = 405
        
        Call MoveScroll((Me.WindowHeight - Me.FormHeader.Height - (Form_Title_Bar_Height + Form_Navegation_Bar_Height)))
    End Sub
    
    Private Sub cmd_Pre_Click()
    
        Form_Title_Bar_Height = 405
        Form_Navegation_Bar_Height = 405
        
        Call MoveScroll(-(Me.WindowHeight - Me.FormHeader.Height - (Form_Title_Bar_Height + Form_Navegation_Bar_Height)))
    End Sub
    
    Public Sub MoveScroll(Distance As Long)
       
       Me.GoToPage 1, , Distance
    End Sub
    

    جعفر

    267.move 10 rec up down.mdb.zip

    • Like 2
  6. تفضل بطريقتين  :smile:

     

    وهذا الكود للطريقتين:

    Option Compare Database
    
    Private Sub Form_Load()
    
    '1
    '--
        Dim rst As DAO.Recordset
        
        Set rst = CurrentDb.OpenRecordset("student_count")
        
        Me.counter1 = rst!Count_name_
        
        rst.Close: Set rst = Nothing
        
        
    '2
    '--
    
        Me.counter2 = DLookup("[Count_name_]", "student_count")
        
        
    End Sub
    
    

    جعفر

    18.count student.accdb.zip

    • Like 1
  7. السلام عليكم  :smile:

     

    امممممممممم 

    1. حاولى تحصلى على اوفيس 2013 بالمناسبه افضل بكتيررررررررررر
    2. ولو دورتى ع النت اختارى ال 23 بت بلاش ال 46 بت 

     

     

    1. لماذا الاوفيس 2013 أفضل؟

    انا لازلت استخدم الاوفيس 2010 ، جربت الاكسس 2013 ، وبعد تضييع وقت طويل ، حذفته ورجعت للاكسس 2010 ،

    كفاية في الاكسس 2013 انك في VBA لما تضغط F1 ، ما يعطيك المساعدة المعهودة و....  :smile:

    ولا في شئ جديد اللي نقدر نستفيد منه كمبرمجين ،

    ولا الوان النماذج وبقية الكائنات فيه اللي تقدر تميز بينهم لما مفتوحين ،

    ولا ولا .... ولا تزال القائمة طويله.

     

    2. مايكروسوفت تنصح بتنصيب الاوفيس 32 بت على جميع الكمبيوترات ، سواء الوندوز 32 بت او 64 بت ،

    والوقت الوحيد الذي تنصح فيه بتنصيب الاوفيس 64 بت هو عندما يكون عندك كمية كبيرة من المعلومات ، والتي يتباطأ فيها الاوفيس 32 بت.

     

     

    جعفر

  8. السلام عليكم

    عموما ،

    نعم ممكن استيراد ملف اكسل إلى الجداول مباشرة ، بعد تنظيم الأعمدة في الاكسل لتكون مطابقة لأعمدة الجدول ،

    ولكن بعض الأوقات العلاقات بين الجداول في برنامجك لا تسمح ، حيث يكون حقل في هذا الجدول معتمدا على حقل آخر في جدول آخر!!

    على العموم ، جرب وشوف :-)

    جعفر

  9. أخي ابا عمرو 

     

    هل تم حل مشكلتك؟

     

    الاخ الكريم / السلام عليكم ورحمة الله

    هذا الموضوع افادني كثير وكنت أبحث عنه ووجدت ضالتي فيه الا أنني لم استطيع تطبيق ما فعلته على القاعدة الخاصة بي فهل من مساعدة

    بارك الله فيكم وقد أرسلت لكم جزء من القاعدة لتسهيل وتوضيح المطلوب 

     

    حياك الله أخي  :smile:

    انت الله هداك دخلت في تعليقك كأنك صاحب الموضوع ، فدوختني  :eek2:

    على العموم ، تفضل ، اشرح اللي تريده (لا شرحك اللي كتبته غير واضح وغير كافي) ،

    اشرح باسماء النماذج والحقول اللي عندك ، وكيف اقدر اشوف الرسالة اللي تقول عنها ،

    وارفق قاعدة بياناتك  :smile:

     

     

    جعفر

    • Like 1
  10. هذا مجرد اقتراح لسهولة العمل ،

    تعديل وحذف للبيانات التي تم ادخالها ،

    والنموذج سياخذ بياناته من جدول واحد فقط dragat-altalep ،

    ولا علاقة بين النموذجين ، صحيح انهم يحفظوا البيانات لنفس الجدول ، ولكن لا ارتباط بين النموذجين  :smile:

     

     

    جعفر

    • Like 1
  11. السلام عليكم أخي عبدالعزيز

     

    رجاء ، لا تستخدم الخط الضخم ، فانا أقرأ المنتدى على الجوال في الكثير من الاوقات ، والخط الكبير صعب القراءة عليه  :eek2:

     

    1- تظهر الرساله التاليه اثناء تعبئة الدرجات في الصوره( اثناء تعبئة الدرجات )

    2- جدول درجات الطلاب خالي تماما من الدرجات كما في الصوره ( جدول الدرجات )

    3- اين اختفت الدرجات وكيف سيتم ادخالها

    4- مالمشكله في النموذج السابق الذي كان يقوم بالتصفية سابقا  في المشاركه رقم 7

    5- اعجبني النموذج السابق انه يفتح اي تصفيه اريدها  مثلا اريد مدرسه كل العوام الدراسيه  او مقارنة ماده في كل المدارس بدل التقارير وغيره فما المشكله اللتي كانت به

     

     

    1. تم التعديل ،

    2 و 3. تم إرجاع البيانات السابقة (كنت اعتقد بان البيانات كانت للتجربة ، وعلى العموم انا غيرت في الكثير منها ، للتجربة) ،

    4. فرق تصفية السجلات بين تصفيتها في الاستعلام وتصفيتها في النموذج/التقرير كالتالي:

    فلنعتبر الجدول عبارة عن مخزن لتخزين المواد ، الاستعلام هو قاعة مخصصة لتصفية وفرز المواد ، والنموذج/التقرير هو منزلك او متجرك ،

    السؤال: عندما تريد شراء المواد ، 

    عمل الفلتر من الاستعلام: هل تختار وتصفي ما تشاء في المكان المخصص لذلك في المخزن ، وتأخذ الى متجرك البضاعة التي تريدها فقط ،

    عمل الفلتر من النموذج: او تأخذ جميع بضاعة المخزن الى متجرك ، ثم تختار البضاعة التي تريد ،

    :smile:

    5. تم التعديل بإزالة ربط حقول السرد ، ولكن السنة لا تزال هي الاهم  :smile:

     

     

    جعفر

     

    14.3.البرنامج المميز.mdb.zip

    • Like 1
  12. أخي عبدالعزيز

     

    يمكنك ان تناديني باسمي جعفر  :smile:

     

    في الواقع لم اتوقع ان يأخذ هذا التعديل الوقت الطويل مني ، إلا اني عملت على ضبطه لآخر درجة ، فان الله يحب اذا عمل احدكم عملا ان يتقنه  :smile:

     

    هذه صورة البرنامج:

    الكائنات التي تشير اليها الاسهم هي كائنات جديده ويعتمد عليها البرنامج  :smile:

    والرجاء ان تعمل حسب تسلسل الارقام ، يعني السنة ، فالمدرسة ، ...

    post-142414-0-39423900-1426020371_thumb.

     

     

    في الواقع ، البرنامج به بعض التحف الفنية ، والتي اود لو انك تغوص فيها ، فالفائدة منها كبيرة  :smile:

    1. كيف اخذت البيانات لجميع الحقول المطلوبة في الاستعلام qry_Data_All_New ،

    2. النموذج الان لا يصفي بياناته من النموذج ، وانما من الاستعلام qry_Data_Entry ، وطريقة التصفية تعطي مرونة في ان الاختيار في النموذج ، تم اختياره ام لا ،

    3. مربعات السرد التالي يتم تصفيته حسب الذي قبله ، مما لا يجعلك تختار شئ غير موجود.

     

     

    جعفر

    14.2.البرنامج المميز.mdb.zip

×
×
  • اضف...

Important Information