Jump to content
أوفيسنا

استعراض آخر 3 سجلات من الجدول عن طريق صندوق الرسائل msgbox


Recommended Posts

أحيانا تحتاج للكشف عن آخر ا لعمليات التي أدخلتها في الجدول دون الذهاب إلى الجدول ودون ربطها بنموذج بحث ، الأمر الذي يتطلب تصميم فورم يحتوي على بعض الكودات المعقدة.. قمت هنا بالإستفادة من وجود فور الرسائل لاستعراض الجدول، وقد حصرتها لاستعراض آخر 3 عمليات من الجدول، والأمر متروك لديكم لزيادة المدى.. أترككم مع المرفق.

 

 

msgbox table.rar

  • Like 2
Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Similar Content

    • By hafidcheraga
      سلام عليكم
      كيف يتم انشاء جدول حدود خلاياه تكون محدودة  غير قابلة للتساع وتحديد الحروف داخل الخلية.

    • By ابا جودى
      السلام عليكم ورحمة الله تعالى وبركاته
      من منا يمل من كثرة استخدام الرسائل مثلى ويظل يفكر فى كل مرة كيف سيكتب الكود المناسب 
      الان موديول واحد به الحل النهائى المرن فى التعامل مع الرسائل
      وحتى لا ننسي الفضل لاصحاب هذا العمل الحقيقين
      الاستاذ @أبو هادي     >>---->  تعريب الصندوق
      الاستاذ @ابوخليل      >>---->  تعريب الصندوق
      الاستاذ @أبو آدم       >>---->  تلوين محتوى الرسالة
      هذا المثال الذى اهديه لكم هو خلاصة دمج الاكواد المستخدمة من كل معلم من هؤلاء العظماء 
      مع بعض التطوير البسيط الذى لا يذكـر اصلا والذى فقط يضفى المرونة فى سهولة استدعاء الكود داخل اى نموذج مع مرونة التغيير فى اضافات الرسالة او عنوان الرسالة حسب متطلبات المبرمج
      - ملاحظة للمرة الاولى احاول التوفيق بين الأكواد التى تعمل على كل من النواتين  64 بيت والـ 32  بيت   ولا اعلم صراحة هل وفقت فى ذلك ام لا

      شرح سريع لمحتوى المثال المرفق
      اولا أكواد الموديول هذا الكود للاستاذ الجليل الاستاذ @أبو آدم 
      '---- اللألوان -------------------------------------------------------------------------------- #If Win64 Then Declare PtrSafe Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long Declare PtrSafe Function SetSysColors Lib "user32" (ByVal nChanges As Long, lpSysColor As Long, lpColorValues As Long) As Long #Else Declare Function GetSysColor Lib "user32" (ByVal nIndex As Long) As Long Declare Function SetSysColors Lib "user32" (ByVal nChanges As Long, lpSysColor As Long, lpColorValues As Long) As Long #End If Public DefaultColour As Long Public Const COLOR_WINDOWTEXT As Long = 8 Public Const CHANGE_INDEX As Long = 1  
      طريقة استخدام الكود بالاستدعاء داخل اى مكان بالبرنامج
      DefaultColour = GetSysColor(COLOR_WINDOWTEXT) ' تخزين لون ثيم النظام الافتراضي SetSysColors CHANGE_INDEX, COLOR_WINDOWTEXT, vbRed ' اضبط لون ثيم النظام على اللون الأحمر MsgBox "you welcome in officena forums", , "welcome" ' كود الرسالة SetSysColors CHANGE_INDEX, COLOR_WINDOWTEXT, defaultColour ' استعادة القيمة الافتراضية بعد اغلاق الرسالة الشرح تفصيلا لكل سطر بالكود
      DefaultColour = GetSysColor(COLOR_WINDOWTEXT) هذا السطر لحفظ تنسيق الالوان المستخدم فى ثيم الويندوز 
      ثم
      SetSysColors CHANGE_INDEX, COLOR_WINDOWTEXT, vbRed هذا يغير اعدادت ثيم الويندوز لتغير لون الكتابة الى اللون الاحمر طبعا يمكن تغيير اللون كيفما تريد بتغير    vbRed   الى ما تريده انت  
      ثم نكتب الرسالة داخل الكود المخصص لها مثلا
      MsgBox "you welcome in officena forums", , "welcome" ثم بعد عرض الرسالة العودة مرة اخرى للون المفضل لثيم الويندوز والذى اختفظنا به فى الجزء الاول من الكود 
      SetSysColors CHANGE_INDEX, COLOR_WINDOWTEXT, DefaultColour وبهذا انتهى جزء تلوين محتوى النص للرسالة
       
       
      الجزء الثانى من الكود داخل الموديول والخاص بتعريب الأزرار  الاستاذ @ابوخليل    /  الاستاذ @أبو هادي   
      #If Win64 Then Declare PtrSafe Function GetCurrentThreadId Lib "kernel32" () As Long Declare PtrSafe Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Declare PtrSafe Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String) As Long Declare PtrSafe Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Declare PtrSafe Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long #Else Declare Function GetCurrentThreadId Lib "kernel32" () As Long Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long Declare Function SetDlgItemText Lib "user32" Alias "SetDlgItemTextA" (ByVal hDlg As Long, ByVal nIDDlgItem As Long, ByVal lpString As String) As Long Declare Function SetWindowsHookEx Lib "user32" Alias "SetWindowsHookExA" (ByVal idHook As Long, ByVal lpfn As Long, ByVal hmod As Long, ByVal dwThreadId As Long) As Long Declare Function UnhookWindowsHookEx Lib "user32" (ByVal hHook As Long) As Long #End If Private m_hHook As Long Const IDOK = 1 Const IDCANCEL = 2 Const IDABORT = 3 Const IDRETRY = 4 Const IDIGNORE = 5 Const IDYES = 6 Const IDNO = 7 Const IDCLOSE = 8 Const IDHELP = 9 Const WH_CBT = 5 Const GWL_HINSTANCE = (-6) Const HCBT_ACTIVATE = 5 Public Sub MessageBoxFullArabicButtons(hwndThreadOwner As Long) Dim hInstance As Long Dim hThreadId As Long hInstance = GetWindowLong(hwndThreadOwner, GWL_HINSTANCE) hThreadId = GetCurrentThreadId() m_hHook = SetWindowsHookEx(WH_CBT, AddressOf MsgBoxHookProc, hInstance, hThreadId) End Sub Private Function MsgBoxHookProc(ByVal uMsg As Long, ByVal wParam As Long, ByVal lParam As Long) As Long If uMsg = HCBT_ACTIVATE Then SetDlgItemText wParam, IDOK, "موافق" SetDlgItemText wParam, IDCANCEL, "إلغاء" SetDlgItemText wParam, IDABORT, "إحباط" SetDlgItemText wParam, IDRETRY, "إعادة" SetDlgItemText wParam, IDIGNORE, "تجاهل" SetDlgItemText wParam, IDYES, "نعم" SetDlgItemText wParam, IDNO, "لا" SetDlgItemText wParam, IDCLOSE, "إغلاق" SetDlgItemText wParam, IDHELP, "مساعدة" UnhookWindowsHookEx m_hHook End If MsgBoxHookProc = False End Function
      الجزء التالى هو بناء كود عام للرسالة حتى يسهل استخدامه باستدعائه بكل سهولة فى جميع نماذج البرنامج
      Public Function MyMesg(Mesgtxt As String, _ Optional ByVal Buttons As VbMsgBoxStyle = vbOKOnly, _ Optional ByVal Title As String = "تطوير صندوق الرسائل العربى من منتديات اوفيسنا", _ Optional ByVal HelpFile As Variant, _ Optional ByVal Context As Variant) As VbMsgBoxResult MessageBoxFullArabicButtons Application.hWndAccessApp MyMesg = MsgBox(Mesgtxt, Buttons + vbMsgBoxRtlReading + vbMsgBoxRight + vbDefaultButton1, Title) End Function  
      نلاحظ الاتى بوجه عام هذا الكود تم تصميمه على ان يكوم اقتراضيا بهذا الشكل
      الرسالة بسيطة تحتوى على زر امر واحد     Buttons As VbMsgBoxStyle = vbOKOnly
      عنوان الرسالة الإفتراضى     Title As String = "تطوير صندوق الرسائل العربى من منتديات اوفيسنا"
      الجزء من الكود هذا  MessageBoxFullArabicButtons Application.hWndAccessApp   الذى يستدعى تعريب الازرار
      السطر الاخير البناء الطيعى لتكوين كود الرسالة بالاضافات التى يفضلها المبرمج
      MyMesg = MsgBox(Mesgtxt, Buttons + vbMsgBoxRtlReading + vbMsgBoxRight + vbDefaultButton1, Title)
      طريقة استخدام الكود بالاستدعاء داخل اى مكان بالبرنامج
      MyMesg "منتديات أوفيسنا ترحب بكم" لتغيير العنوان الافتراضى
      MyMesg "منتديات أوفيسنا ترحب بكم",,"العنوان الجديد كما تريد" استخدام الاضافات لتغيير الازرار مثلا
      MyMesg "هل أعجبتك هذه الترجمة و التعديلات والأفكار؟", vbYesNo مع عنوان مخصص
      MyMesg "هل أعجبتك هذه الترجمة و التعديلات والأفكار؟", vbYesNo,"عنوان جديد"  
      والان وصلنا الى نهاية الموضوع 
      اسأل الله تعالى ان يرزق اساذتنا العظماء الذين كان لهم الفضل فى هذا الموضوع البركة فى العمر والعلم والرزق والاهل والولد اللهم اغفر لهم ولوالديهم واللهم احسن اليهم كما احسنوا هم الينا 
      اللهم تقبل اعمالهم يارب العالمين فى موازين اعمالهم وضاعف حسناتهم و الاجر اضعافا مضاعفة يارب العالمين اللهم ارفع درجاتهم فى أعلى درجات الجنان ودرجاتهم والديهم يارب العالمين
      امين امين امين
       
       
      Full Arabic Message Box.accdb
       
      Full Arabic Message Box.mdb
    • By momen268268
      السلام عليكم ورحمة الله وبركاته
      اعزائي مشرفين ومشتركين هذا الصرح الاكثر من رائع والذي استفدت منه كثيرا جعله الله في ميزان حسناتكم 
       
      استفساري عن اني اريد عند اظهار رسالة الاكسس بعد عدم تحقق الشرط تكون بدون زر موافق فقط تظهر وتختفي بعد وقت احدده انا وبحثت كثيرا فى الانترنت ولم اجد ضالتي فهل أكد من يساعدني في ضالتي
       
      وشكرا
    • By Mohdbns3id
      تحية طيبة أسعد الله جميع أوقاتكم بكل خير،،،
      أرجوا التكرم من المدربين والأساتذة شرح طرق الاستفادة من MsgBox و InputBox في الاكسل VBA.
      أنا أحتاج توضيفها في ملف العمل الخاص بي.
      لدي ورقة عمل بها عدة خلايا من B6:T150 يتم تعبئتها كما يلي:
      يتم إضافة البيانات بشكل عادي من B6:D6 و الخلية E6 إذا تم إضافة بيانات فيها يظهر لي MsgBox إذا تم إختيار لا يختفي و إذا تم إختيار نعم يظهر لي InputBox يتم إضافة البيانات التي تكتب داخله في خليه T6.
       الخلية G6:G150 إذا حدث فيها إضافة بيانات تظهر لي رسالة MsgBox توضح لي البيان المكتوب في نفس السطر T6 ويتم تكراراها إلى T150
       
       
      ولكم كل اشكر والتقدير،،،
      مثال.xlsm
    • By Shivan Rekany
      السلام عليكم ورحمة الله وبركاته
      اليوم اريد رأيكم عن استخدام جدول واحد لعملية الحركات شراء والبيع او استخدام جدولين منفصلين لكل واحد منهم
      ما هو المزايا و العيوب كل طرق منهما ؟
      اي طرق منهما افضل ؟ فقط نريد رأيكم
      اتمنى ان يشارك معنا المحاسبين و جميع الفئات الاخرى لمن لديه خبرة ان يعطونا افكارهم
      تقبلوا تحياتي
  • Recently Browsing   0 members

    No registered users viewing this page.

×
×
  • Create New...