-
Posts
9,760 -
تاريخ الانضمام
-
تاريخ اخر زياره
-
Days Won
396
نوع المحتوي
المنتدى
مكتبة الموقع
معرض الصور
المدونات
الوسائط المتعددة
مشاركات المكتوبه بواسطه jjafferr
-
-
وعليكم السلام شباب ، ممكن ادلو بدلوي
1. يجب ان تحول SUB الزر من Private الى Public:
من Private Sub Btn2_Click() الى Public Sub Btn2_Click()
بعدين تقدر تناديه هكذا:
call Forms!Mfrm!Form_Btn2_Click
وطبعا الكود غير مجرب بالدقة ، لأنه ما عندنا شئ نقدر نجربه عليه
جعفر
- 1
-
تفضل
طريقتين لعرض الصور:
في النموذج نادي التقرير هكذا:
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
وانا افضل الطريقة الاولى ، لأننا نقرأ الصورة من النموذج مباشرة ،
بينما في الطريقة الثانية ، فاننا نطلب الصورة من مجلد الكمبيوتر (يعني انت طلبتها مرة للنموذج ، والان تطلبها للتقرير )
جعفر
- 1
-
وعليكم السلام أخي
جرب المرفق في الرابط التالي ، وهو يصدر البيانات للاكسل كما تريد:
http://www.officena.net/ib/index.php?showtopic=58001
جعفر
-
سأعمل محاولة جديدة ، لعله يفي
آسف ، لم تفلح المحاولة
-
شكرا على الملفات القيمة
حياك الله أخي عبدالفتاح
ما تغلى عليكم
بس للأسف أخينا abenjalo ما قدر يستفيد منها
سأعمل محاولة جديدة ، لعله يفي
جعفر
-
وعليكم السلام أخي
حاولت اساعدك ، ولكن مرفقك ما كان فيه بيانات
ولا كان فيه مثال اقدر اطبقه عليه
كود حساب الفرق بين تاريخين (موجود في الاكسس ، اذا ضغطت على 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
جعفر
-
يعني المرفق اللي وضعته لك في مشاركتي السابقة ما افادك؟
جعفر
-
وعليكم السلام ورحمة الله وبركاته
اعرض عليك عمل أخي علاء ابوالعلا (الله يعطيه الصحة والعافية ، ورحم الله والديه دنيا وآخرة ان شاء الله ) ، من منتدى الفريق العربي للبرمجة ، بإضافات مني
والعمل هو عبارة عن التنقل بين السجلات بعدد معين من السجلات في كل ضغطة زر:
المربع رقم 1 هو من عمل أخي علاء ، والمربع رقم 2 من عملي ، مقتبسا فكرة أخي علاء:
عملت نموذج مستمر ، واردت السجلات تنزل او تصعد صفحة كاملة (مثل Scroll up down) بطول النموذج ، وهذه النتيجة:
إضغط على الصورة للحركة:
ولفهم الكود ، رجاء ملاحظة الارقام:
ومقارنتها بهذه الاسطر من الكود:
وهذا هو الكود:
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
جعفر
- 2
-
-
-
وعليكم السلام
جرب ، غير نوع النموذج ، من متواصل الى ورقة بيانات
جعفر
-
وعليكم السلام أخي ابا عمرو
احسن الله عزاكم ان شاء الله ، واحسن الله اليه ولا اراكم مكروه بعده ان شاء الله
انا لله وانا اليه راجعون
جعفر
-
-
تفضل بطريقتين
وهذا الكود للطريقتين:
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
جعفر
- 1
-
السلام عليكم
امممممممممم
1. حاولى تحصلى على اوفيس 2013 بالمناسبه افضل بكتيررررررررررر
2. ولو دورتى ع النت اختارى ال 23 بت بلاش ال 46 بت
1. لماذا الاوفيس 2013 أفضل؟
انا لازلت استخدم الاوفيس 2010 ، جربت الاكسس 2013 ، وبعد تضييع وقت طويل ، حذفته ورجعت للاكسس 2010 ،
كفاية في الاكسس 2013 انك في VBA لما تضغط F1 ، ما يعطيك المساعدة المعهودة و....
ولا في شئ جديد اللي نقدر نستفيد منه كمبرمجين ،
ولا الوان النماذج وبقية الكائنات فيه اللي تقدر تميز بينهم لما مفتوحين ،
ولا ولا .... ولا تزال القائمة طويله.
2. مايكروسوفت تنصح بتنصيب الاوفيس 32 بت على جميع الكمبيوترات ، سواء الوندوز 32 بت او 64 بت ،
والوقت الوحيد الذي تنصح فيه بتنصيب الاوفيس 64 بت هو عندما يكون عندك كمية كبيرة من المعلومات ، والتي يتباطأ فيها الاوفيس 32 بت.
جعفر
-
السلام عليكم
عموما ،
نعم ممكن استيراد ملف اكسل إلى الجداول مباشرة ، بعد تنظيم الأعمدة في الاكسل لتكون مطابقة لأعمدة الجدول ،
ولكن بعض الأوقات العلاقات بين الجداول في برنامجك لا تسمح ، حيث يكون حقل في هذا الجدول معتمدا على حقل آخر في جدول آخر!!
على العموم ، جرب وشوف :-)
جعفر
-
أخي ابا عمرو
هل تم حل مشكلتك؟
الاخ الكريم / السلام عليكم ورحمة الله
هذا الموضوع افادني كثير وكنت أبحث عنه ووجدت ضالتي فيه الا أنني لم استطيع تطبيق ما فعلته على القاعدة الخاصة بي فهل من مساعدة
بارك الله فيكم وقد أرسلت لكم جزء من القاعدة لتسهيل وتوضيح المطلوب
حياك الله أخي
انت الله هداك دخلت في تعليقك كأنك صاحب الموضوع ، فدوختني
على العموم ، تفضل ، اشرح اللي تريده (لا شرحك اللي كتبته غير واضح وغير كافي) ،
اشرح باسماء النماذج والحقول اللي عندك ، وكيف اقدر اشوف الرسالة اللي تقول عنها ،
وارفق قاعدة بياناتك
جعفر
- 1
-
أفا ، السموحة
ومع اني ما اقدر اعوض عن اللي صار ، لكن هاك اثنين منهم ولا تزعل
جعفر
-
السلام عليكم
أخي آخر الارض
اود ان اعرض عليك كود واحد على زر واحد ، يخفي ويُظهر:
Me.a.Visible = Not Me.a.Visible
ايش رايك؟
جعفر
- 1
-
هذا مجرد اقتراح لسهولة العمل ،
تعديل وحذف للبيانات التي تم ادخالها ،
والنموذج سياخذ بياناته من جدول واحد فقط dragat-altalep ،
ولا علاقة بين النموذجين ، صحيح انهم يحفظوا البيانات لنفس الجدول ، ولكن لا ارتباط بين النموذجين
جعفر
- 1
-
أخي عبدالعزيز
هذا نموذج ادخال ،
لذلك يجب ان ععمل نموذج تعديل وحذف ، لسهولة وصولك للذي تريده
جعفر
-
السلام عليكم أخي عبدالعزيز
رجاء ، لا تستخدم الخط الضخم ، فانا أقرأ المنتدى على الجوال في الكثير من الاوقات ، والخط الكبير صعب القراءة عليه
1- تظهر الرساله التاليه اثناء تعبئة الدرجات في الصوره( اثناء تعبئة الدرجات )
2- جدول درجات الطلاب خالي تماما من الدرجات كما في الصوره ( جدول الدرجات )
3- اين اختفت الدرجات وكيف سيتم ادخالها
4- مالمشكله في النموذج السابق الذي كان يقوم بالتصفية سابقا في المشاركه رقم 7
5- اعجبني النموذج السابق انه يفتح اي تصفيه اريدها مثلا اريد مدرسه كل العوام الدراسيه او مقارنة ماده في كل المدارس بدل التقارير وغيره فما المشكله اللتي كانت به
1. تم التعديل ،
2 و 3. تم إرجاع البيانات السابقة (كنت اعتقد بان البيانات كانت للتجربة ، وعلى العموم انا غيرت في الكثير منها ، للتجربة) ،
4. فرق تصفية السجلات بين تصفيتها في الاستعلام وتصفيتها في النموذج/التقرير كالتالي:
فلنعتبر الجدول عبارة عن مخزن لتخزين المواد ، الاستعلام هو قاعة مخصصة لتصفية وفرز المواد ، والنموذج/التقرير هو منزلك او متجرك ،
السؤال: عندما تريد شراء المواد ،
عمل الفلتر من الاستعلام: هل تختار وتصفي ما تشاء في المكان المخصص لذلك في المخزن ، وتأخذ الى متجرك البضاعة التي تريدها فقط ،
عمل الفلتر من النموذج: او تأخذ جميع بضاعة المخزن الى متجرك ، ثم تختار البضاعة التي تريد ،
5. تم التعديل بإزالة ربط حقول السرد ، ولكن السنة لا تزال هي الاهم
جعفر
- 1
-
وعليكم السلام أخي حسسين
في الواقع كنت ناوي اعمل برنامج فيه شوية اعمال اضافية ، بس عطني بعض الوقت ، وان شاء الله سيكون البرنامج مميز
جعفر
- 1
-
أخي عبدالعزيز
يمكنك ان تناديني باسمي جعفر
في الواقع لم اتوقع ان يأخذ هذا التعديل الوقت الطويل مني ، إلا اني عملت على ضبطه لآخر درجة ، فان الله يحب اذا عمل احدكم عملا ان يتقنه
هذه صورة البرنامج:
الكائنات التي تشير اليها الاسهم هي كائنات جديده ويعتمد عليها البرنامج
والرجاء ان تعمل حسب تسلسل الارقام ، يعني السنة ، فالمدرسة ، ...
في الواقع ، البرنامج به بعض التحف الفنية ، والتي اود لو انك تغوص فيها ، فالفائدة منها كبيرة
1. كيف اخذت البيانات لجميع الحقول المطلوبة في الاستعلام qry_Data_All_New ،
2. النموذج الان لا يصفي بياناته من النموذج ، وانما من الاستعلام qry_Data_Entry ، وطريقة التصفية تعطي مرونة في ان الاختيار في النموذج ، تم اختياره ام لا ،
3. مربعات السرد التالي يتم تصفيته حسب الذي قبله ، مما لا يجعلك تختار شئ غير موجود.
جعفر
استدعاء زر امر في النموذج الرئيس
في قسم الأكسيس Access
قام بنشر
انا قلت لك:
وبدل ما تساعدنا وتسهل علينا بقاعدة بياناتك ، اضطررت ان اعمل قاعدة بيانات خاصة لك ، فقط لأوضح ،
بعد التجربة ، اتضح ان هذا هو الكود الصحيح:
لاحظ في الصورة التالية:
عندي نموذج رئيسي اسمه frm_1 والزر الذي عليه يعطي الرسالة الموضحة ،
يوجد نموذج فرعي sfrm_1 داخل هذا النموذج ، ولما نضغط على الزر فيه ، فانه يطلق رسالة زر frm_1.
الى هنا والكود حقك يشتغل ويتوقف ، ولن يشتغل على الخطوات التالية
اما الان ، فخلي النموذج frm_1 مفتوحا او مغلقا ،
افتح frm_2 ، واضغط على الزر ، فانه سيطلق رسالة زر frm_1 كذلك
والكود في sfrm_1 و frm_2 هو نفسه بدون اي تغيير ، وهو الذي وضحته لك في اعلى هذه المشاركة.
Private sub
معناه ان الكود بداخل هذا الـ sub خاص بهذا النموذج فقط ، ولا يستطيع اي نموذج آخر ان يرى محتواه ،
Public sub
معناه انه يسمح لجميع النماذج ان ترى الكود داخل هذا الـ sub ، واستعماله ، سواء كان النموذج مفتوحا او مغلقا
جعفر
22.Click_Main_from_Sub.mdb.zip