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

Moosak

أوفيسنا
  • Posts

    2177
  • تاريخ الانضمام

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

  • Days Won

    55

كل منشورات العضو Moosak

  1. بالعكس .. كان زكاة للوقت 😊 بارك الله فيك أخي حمدي 🌹
  2. مبارك عليك الترقية أخي 🙂 @سامي الحداد وشهادة غالية من عمالقة المنتدى 🙂 وفقك الله وبارك الله لك في كل جزء من الثانية من حياتك 😊🌹
  3. وعليكم السلام 🙂 جرب الآن .. If Len(Me.attach & "") <> 0 Then If Len(Dir(Me.attach, vbDirectory)) = 0 Then MsgBox "لايمكن العثور على المرفق", vbOKOnly + vbCritical: End Else .AddAttachment Me.attach GoTo Contenue End If End If If MsgBox("هل تريد الارسال بدون مرفق؟", vbYesNo + vbExclamation, "تنبيه!") = vbYes Then GoTo Contenue Else If Len(Me.attach & "") = 0 Then: MsgBox "يرجى إضافة المرفق", vbOKOnly + vbCritical: End If Len(Dir(Me.attach, vbDirectory)) = 0 Then MsgBox "لايمكن العثور على المرفق", vbOKOnly + vbCritical: End Else .AddAttachment Me.attach End If End If Contenue: flds("urn:schemas:mailheader:content-type") = "multipart/alternative" flds.Update .Send ارسال Moosak.rar
  4. علشان تعمل هذي الخطوة .. لازم تحفظ القيم في جدول .. ولما يفتح أي نموذج ياخذ القيم من الجدول .. وهذي لحالها قصة ثانية 🙂 وأترك موضوعها للشباب .. لأني بكون مشغول خلال الفترة القادمة 😉🌹
  5. وعليكم السلام أخي TQTHAMI 🙂 شكرا لك على دعواتك الطيبة ، وتقبل الله منا ومنك 🤲 تم التنفيذ ولله الحمد .. (ولكن بشرط أن تكون النماذج مفتوحة أثناء التغيير ) وهذه هي الدالة المستخدمة : Public Sub ChangeBtnPic(PicNum As Integer, BtnTag As Integer) On Error Resume Next Dim Frm As Form, ctl As Control For Each Frm In Access.Forms If CurrentProject.AllForms(Frm.Name).IsLoaded Then For Each ctl In Frm.Controls If ctl.ControlType = acCommandButton Then If ctl.Tag = BtnTag Then ctl.Picture = PicBt & PicNum & ".bmp" End If End If Next ctl End If Next Frm End Sub icon - Moosak.rar
  6. وعليكم السلام ورحمة الله وبركاته أخي حمدي 🙂 تفضل هذا هو التعديل : If MsgBox("هل تريد الارسال بدون مرفق؟", vbYesNo + vbExclamation, "تنبيه!") = vbNo Then If Len(Me.attach & "") = 0 Then: MsgBox "لايمكن العثور على المرفق", vbOKOnly + vbCritical: End If Len(Dir(Me.attach, vbDirectory)) = 0 Then MsgBox "لايمكن العثور على المرفق", vbOKOnly + vbCritical: End Else .AddAttachment Me.attach End If End If
  7. طبعا يمكنك تطبيقها أينما شئت ( نموذج / استعلام / تقرير /..... ) .. الفكرة تكمن في أنك تجعل مصدر بيانات العنصر الذي تريده سواء كان ( نموذج ، تقرير ) مصدره يكون استعلام يجمع الجدولين ( جدول الفصول وجدول الصفوف ) وبهذا نستطيع الحصول على الأرقام المقابلة لحقول النصوص لأسماء الفصول أو الصفوف .. وبكود بسيط ( نفس الموجود في مربع نص الفصول بالأرقام ) تجمع الأرقام وتجعلها بين قوسين 🙂 هكذا : "(" & [FosoolCbo].[column](0) & "/" & [SofoofCbo].[column](0) & ")" وفي حالة الملف الذي أرفقته .. يجب أن تجعل للتقرير مصدر بيانات ( استعلام ) يمكنك من خلاله أن تحدد الفصول المطلوب عرضها في التقرير .. وفي التقرير تجمع الأرقام بن قوسين .. أدري أن الشرح النصي يشتت .. لكن يحتاج أن ترتب برنامجك بالأول .. وتصمم النموذج اللي يفتح التقرير ويحدد الصف اللي تريد تطبعه في التقرير ( وهذا ليس محور حديثنا الآن ) 🙂 وبعدها نضبط التقرير 🙂
  8. عذرا حصل خطأ مطبعي 😅🖐 نزله الآن من جديد من المشاركة السابقة ..
  9. الآن صار الموضوع أسهل 🙂 تحويل النصوص إلي أرقام.rar
  10. أعتقد أن الأكواد المستخدمة معقدة نوعاً ما 🙂 أنصح باستخدام أكواد أبسط منها والاستعانة بالدوال المتعارف عليها بدل دوال ال API . وجهة نظر 🙂
  11. وعليكم السلام ورحمة الله وبركاته جرب الآن حسب فهمي المتواضع للشرح : 🙂 icon - Moosak.rar
  12. أهلا بك عمي خالد @مبرمج متقاعد 🙂 .. طبعا ذكرت ذلك بناءً على ما اطلعت عليه من وصايا بعض الخبراء أمثالكم .. والعلة من كراهة ذلك هو التوصية بإبعاد الجداول عن أية عمليات حسابية وتخصيصها لحفظ البيانات فقط .. وذلك لتجنب البطء في جلب البيانات .. ومع إمكانية عمل مثل هذه الحقول ( أقصد المحسوبة ) إلا أن حالها مثل حال حقول المرفقات والقيم المتعددة وحقل الروابط التشعبية .. لها سلبيات أضنك تعلمها 🙂 ولهذه الأسباب لا ينصح به .. والله أعلم
  13. طبق هذه الإعدادات هذه أخي : وأخبرنا بالنتيجة 🙂
  14. نعم أخي العزيز .. 🙂 يمكن تطبيقها على النموذج مباشرة .. أو في الاستعلام ( نفس الملف المرفق - الاستعلام هنا مصدر بيانات النموذج ) .. أو عملها كحقل محسوب في الجدول ( لا ينصح به ) .. الدرجة الأعلى.rar
  15. وعليكم السلام ورحمة الله وبركاته 🙂 لن تحتاج إلى دالة DMax فقط أكتب هذا السطر في مصدر بيانات [الدرجة الأعلى] : =IIf([الدرجة1]>=[الدرجة2];[الدرجة1];[الدرجة2]) والنتيجة : 🙂
  16. وذلك لتلافي إدخال الأسماء بشكل خاطئ 👍🌹
  17. وهذه هي الدالة التي ذكرتها لك بشكل مبدأي : 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)
  18. وعليكم السلام ورحمة الله وبركاته أخي محمود 🙂 يمكن عمل ذلك بدالة برمجية بكل سهولة ... ولكن قبل ذلك وجب معرفة بُـنية قاعدة البيانات لديك لمعرفة كيفية التطبيق الأنسب لها .. وأفضل حل لعمل ذلك هو إرفاق نموذج ( ملف أكسس ) ببيانات واقعية نفس التي ستعمل عليها .. 🙂 وهذا يختصر الوقت والجهد والأخذ والرد 😉👌
  19. وعليكم السلام ورحمة الله وبركاته أخي هاني 🙂 أنظر هنا :
  20. وعليكم السلام ورحمة الله وبركاته أخي TQTHAMI 🙂 اطلعت على المرفق وقرأت المطلوب عدة مرات .. ولكن عجزت عن فهم ماتريده بالضبط 😅 تختار من القائمة فتتغير صور الأزرار ؟ وعند الاختيار من القائمة أي زر الذي تريد تتغيير صورته ؟ أم تضغط الزر فتتغير صور الأزرار الأخرى ؟ أم ماذا بالضبط ؟! لديك 6 أزرار .. والصور عددها 5 .. !! 🙃
  21. ما أدري أيش اللي يصير هنا 😅 بس العنوان ذكرني بهذا الموضوع : 🙂
  22. شكرا لك أخي أبو أحمد .. إبداع 🙂🌹
  23. شوف هذا الموضوع مثلا : https://www.officena.net/ib/topic/76910-نقل-فلترة-النموذج-إلى-التقرير-عند-الفتح-شرح-فيديو/
  24. تستطيع التحكم بجميع ذلك من الاستعلام .. بحيث تضع فيه المعايير التي تريد الطباعة عليها .. 🙂 فلو كان عندك في الجدول حقل تاريخ الإجازة [من - إلى ] مثلا فتكتب في معايير التاريخ في الاستعلام : < [FromDate] or > [ToDate]
  25. وعليكم السلام ورحمة الله وبركاته 🙂 أخي @أبو ماجد الغامدي أنا لي رأي بخصوص عملية نقل السجلات من جدول إلى جدول آخر .. لاحظت من خلال مواضيعك في المنتدى تفعل ذلك كثيرا .. 🙂 أقترح عليك أن تغير هذه الطريقة إلى طريقة أكثر أمانا وأقل عبئا على قاعدة البيانات .. وهي : بما أن البيانات هي نفسها فقط تريد أن تستدعيها كل مرة بطريقة مختلفة ،، فأقترح عليك أن تكتفي بجدول واحد فقط .. بحيث أنك تضع جميع الحقول التي تريدها في نفس الجدول وتضع من ضمن الحقول التصنيفات المختلفة لكل سجل وذلك لكي تستدعي السجلات المطلوبة فقط عن طريق الاستعلامات .. فمثلا تضيف خانة عبارة عن حقل ( نعم / لا ) وتستخدمه لفرز موظفين معينين ، وحقل ( نعم / لا ) آخر لفرز فئات أخرى .. وهكذا .. وتطبيقا على مثالك الحالي (لم أشاهد المرفق بعد 🙂 ) .. أضف في نفس الجدول حقل ( نعم / لا ) وباستعلام تحديث يعمل صح إذا كان التاريخ متحقق .. واستعلام تحديث ثاني يشيل الصح إذا بترجعهم من جديد .. هذا وسلامتك 🙂🖐
×
×
  • اضف...

Important Information