ACC2000: دالة MsgBox تجاهل عند تسجيل (@) تنسيق

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

اضغط هنا لرابط المقالة باللغة الانجليزية242889
تمت أرشفة هذه المقالة. وتظهر "كما هي" ولن يتم تحديثها بعد الآن.
متوسطة: يتطلب ماكرو الأساسية ترميز و المهارات إمكانية التشغيل المتداخل.

ينطبق هذا المقال إلى قاعدة بيانات Microsoft Access (.mdb) مشروع Microsoft Access (.adp).

الأعراض
في Microsoft Access 2000 العلامة (@) لا يوفر تنسيق خاص عند استخدامها مع الدالة MsgBox.
السبب
لا تعتمد الدالة MsgBox توفيرها بواسطة Microsoft Visual Basic Editor (Vbe6.dll) التنسيق المتوفر بواسطة علامة (@).
الحل
هناك نوعين من الحلول الممكنة. يتم حل واحد لاستخدام الإجراء MsgBox في ماكرو. هو الحل الأخرى في كتابة دالة معرفة من قبل المستخدم يستخدم الدالة Eval استدعاء دالة MsgBox.

إنشاء ماكرو يستخدم الإجراء MsgBox

  1. في الإطار "قاعدة بيانات" ، انقر فوق وحدات الماكرو تحت كائنات ثم انقر فوق جديد.
  2. في الإطار "ماكرو" ، انقر فوق السهم الموجود أسفل الإجراء ثم انقر فوق Msgbox في القائمة إجراء.
  3. اضغط F6 لنقل المؤشر إلى مربع رسالة ضمن وسيطات الإجراء.
  4. اكتب الرسالة التالية في مربع الرسالة:
    زر button!@This خاطئ لا work.@Try آخر.
  5. من القائمة ملف، انقر فوق حفظ باسم ثم انقر فوق موافق لحفظ الماكرو مع الاسم الافتراضي.
  6. في القائمة تشغيل ، انقر فوق تشغيل. لاحظ أن السطر الأول من الرسالة غامق.

إنشاء دالة FormattedMsgBox

يفرض الدالة Eval Visual Basic للتطبيقات التعبير خدمة تقييم الدالة MsgBox بشكل منفصل من محرر Visual Basic و ولذلك يكون من الممكن الاستفادة من تنسيق تسجيل. يستخدم المثال التالي دالة معرفة من قبل المستخدم باسم FormattedMsgBox بدلاً من الدالة MsgBox. لإنشاء دالة FormattedMsgBox اتبع الخطوات التالية:
  1. ابدأ تشغيل Microsoft Access.
  2. افتح نموذج قاعدة البيانات Northwind.mdb.
  3. إنشاء وحدة نمطية جديدة.
  4. إضافة الإجراء التالي إلى الوحدة النمطية:
    Function FormattedMsgBox(Prompt As String, _                         Optional Buttons As VbMsgBoxStyle = vbOKOnly, _                         Optional Title As String = "Microsoft Access", _                         Optional HelpFile As Variant, _                         Optional Context As Variant) As VbMsgBoxResult    Dim strMsg As String    If IsMissing(HelpFile) Or IsMissing(Context) Then       strMsg = "MsgBox(" & Chr(34) & Prompt & Chr(34) & ", " & Buttons & _                 ", " & Chr(34) & Title & Chr(34) & ")"    Else       strMsg = "MsgBox(" & Chr(34) & Prompt & Chr(34) & ", " & Buttons & _                 ", " & Chr(34) & Title & Chr(34) & ", " & Chr(34) & _                      HelpFile & Chr(34) & ", " & Context & ")"    End If    FormattedMsgBox = Eval(strMsg)End Function					
  5. حفظ الوحدة النمطية باستخدام الاسم الافتراضي الذي يظهر في المربع اسم الوحدة النمطية.
  6. عندما تريد استخدام تنسيق خاص يوفرها في تسجيل الدخول، استدعاء دالة FormattedMsgBox بدلاً من الدالة MsgBox المضمنة. على سبيل المثال:
    Sub TestMsgBox()    Dim lngResult As Long    lngResult = FormattedMsgBox("Extremely Important@This is an invalid operation.@Refer to online help.", _        vbCritical + vbOkOnly, "Microsoft Access")End Sub					
معلومات أخرى
في الإصدارات السابقة من Microsoft Access يمكنك استخدام العلامة إلى تنسيق أجزاء من نص الرسالة في دالة MsgBox. عند استخدامك اثنين في علامات في نص الدالة MsgBox النص محددة بواسطة في تسجيل فصل إلى ثلاث فقرات في "مربع رسالة" مع الفقرة الأولى بنص غامق.

يتم توفير هذه الوظيفة بواسطة Visual Basic مكتبة للتطبيقات (Vba332.dll) في Microsoft Access 97. مع التكامل من Microsoft Visual Basic Editor ينفذ Microsoft Access 2000 لم يعد Vba332.dll.

خطوات إعادة إنشاء السلوك

  1. ابدأ تشغيل Microsoft Access.
  2. افتح نموذج قاعدة البيانات Northwind.mdb.
  3. إنشاء وحدة نمطية جديدة.
  4. قم بإضافة التعليمات البرمجية التالية إلى الوحدة النمطية:
    Option Compare DatabaseOption ExplicitSub FormatMessage()    Dim strMsgText As String    strMsgText = "Extremely Important@This is an invalid operation.@" & _                 "Refer to online help."    MsgBox strMsgTextEnd Sub					
  5. تشغيل هذا الإجراء في الإطار الحالي.
ملاحظة تحتوي الرسالة على سلسلة حرفية "للغاية Important@This هو operation.@Refer غير صالح إلى التعليمات الفورية." يتم تنسيق هذه الرسالة في Microsoft Access 95 و97 في ثلاث فقرات منفصلة مع النص "بالغة الأهمية" في غامق ، مشابهة لما يلي:
هام للغاية

هذا عملية غير صالحة.

راجع التعليمات الفورية.
prb

تحذير: تمت ترجمة هذه المقالة تلقائيًا

خصائص

رقم الموضوع: 242889 - آخر مراجعة: 02/09/2014 17:09:19 - المراجعة: 3.0

Microsoft Access 2000 Standard Edition

  • kbnosurvey kbarchive kbmt kbprb KB242889 KbMtar
تعليقات