الدالة Format

ينطبق على
Access لـ Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

إرجاع متغير‏ (سلسلة) تحتوي على تعبير منسق طبقاً للإرشادات في تعبير تنسيق.

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

راجع بعض الأمثلة

بناء الجملة

Format( *expression [, format ] [, firstday_week ] [, firstweek_year ] )

يحتوي بناء جملة الدالة Format على الوسيطات التالية:

الوسيطة الوصف
التعبير Required. أي تعبير صحيح.
تنسيق اختيارية. تعبير تنسيق مسمى أو معرف من قبل المستخدم صحيح.
أول أيام الأسبوع اختيارية. ثابت يحدد اليوم الأول من الأسبوع.
أول أسابيع السنة اختيارية. ثابت يحدد الأسبوع الأول من السنة.

    

الإعدادات

يمكن أن تستخدم الوسيطة format مجموعة متنوعة من الإعدادات، استنادا إلى نوع بيانات وسيطة التعبير . راجع المقالات المذكورة في الجدول التالي للحصول على مزيد من المعلومات حول تعبيرات التنسيق الصالحة.

بالنسبة للتعبيرات التي تستخدم نوع البيانات هذا... راجع المقالة
أي نوع الخاصية "تنسيق"
تاريخ/وقت تنسيق حقل للتاريخ والوقت
رقمية تنسيق حقل رقم أو عملة
النص والمذكرة تنسيق حقل نصي
نعم/لا الخاصية "تنسيق" - نوع البيانات "نعم/لا"

    

تحتوي وسيطة أول أيام الأسبوع على هذه الإعدادات:

القيمة الثابتة Value الوصف
vbUseSystem 0 استخدام إعداد NLS API.
VbSunday 1 الأحد (افتراضي)
vbMonday 2 الاثنين
vbالثلاثاء 3 الثلاثاء
vbWednesday 4 الأربعاء
vbالخميس 5 الخميس
vbFriday 6 الجمعة
vbالسبت 7 السبت

    

تحتوي وسيطة أول أسابيع السنة على هذه الإعدادات:

القيمة الثابتة Value الوصف
vbUseSystem 0 استخدام إعداد NLS API.
vbFirstJan1 1 البدء بالأسبوع الذي يبدأ فيه 1 يناير (افتراضي).
vbFirstFourDays 2 ابدأ بالأسبوع الأول الذي يحتوي على أربعة أيام على الأقل في السنة.
vbFirstFullWeek 3 ابدأ بأول أسبوع كامل من السنة.

    

ملاحظات

لتنسيق قم بما يلي
أرقام استخدام تنسيقات رقمية مسماة معرفة مسبقا أو إنشاء تنسيقات رقمية معرفة من قبل المستخدم.
التواريخ والأوقات استخدام تنسيقات التاريخ/الوقت المسماة المعرفة مسبقا أو إنشاء تنسيقات تاريخ/وقت معرفة من قبل المستخدم.
الأرقام التسلسلية للوقت والتاريخ استخدم تنسيقات التاريخ والوقت أو التنسيقات الرقمية.
سلاسل يمكنك إنشاء تنسيقات السلاسل المعرفة من قبل المستخدم.

    

إذا حاولت تنسيق رقم من دون تحديد تنسيق، فسيوفر التنسيق وظائف مماثلة للدالة Str ، على الرغم من أنها مدركة عالميا. ومع ذلك، لا تتضمن الأرقام الموجبة المنسقة كسلاسل باستخدام "تنسيق" مسافة بادئة مخصصة لعلامة القيمة؛ وتحتفظ تلك المحولة باستخدام Str بالمساحة البادئة.

إذا كنت تقوم بتنسيق سلسلة رقمية غير مترجمة، فيجب استخدام تنسيق رقمي معرف من قبل المستخدم لضمان حصولك على المظهر المطلوب.

ملاحظة

إذا كان إعداد خاصية Calendar ميلاديا وكان التنسيق يحدد تنسيق التاريخ، فيجب أن يكون التعبير المتوفر ميلاديا. إذا كان إعداد خاصية Visual Basic Calendar هجري، فيجب أن يكون التعبير المرفق هجري.

إذا كان التقويم ميلاديا، فلن يتغير معنى رموز تعبير التنسيق . إذا كان التقويم هجريا، فإن كافة رموز تنسيق التاريخ (على سبيل المثال، dddd وmmmm وyyyy) لها نفس المعنى ولكنها تنطبق على التقويم الهجري. تظل رموز التنسيق باللغة الإنجليزية. تعرض الرموز التي تؤدي إلى عرض نص (على سبيل المثال، صباحا ومساء) السلسلة (الإنجليزية أو العربية) المقترنة بهذا الرمز. يتغير نطاق رموز معينة عندما يكون التقويم هجري.

الرمز Range
d 1-30
dd 1-30
ww 1-51
mmm عرض أسماء الأشهر الكاملة (لا تحتوي أسماء الأشهر الهجرية على اختصارات).
y 1-355
yyyy 100-9666

أمثلة

استخدام الدالة Format في تعبير يمكنك استخدام التنسيق أينما يمكنك استخدام التعبيرات. على سبيل المثال، يمكنك استخدامه في استعلام كجزء من الاسم المستعار للحقل، أو في الخاصية "مصدر عنصر التحكم " لمربع نص في نموذج أو تقرير. توضح الأمثلة التالية تعبيرا قد تستخدمه في الخاصية "تصفية " لتقرير لتقييد الإخراج بسجلات من الأسبوع السابق.

Format([Date],"ww")=Format(Now(),"ww")-1

في هذا المثال، يحتوي مصدر سجلات التقرير على حقل يسمى "التاريخ"، والذي يحتوي على التاريخ الذي تم فيه تعديل كل سجل معين، والذي يستخدم في التقرير. عند تشغيل التقرير، تتم تصفية نتائجه لإظهار السجلات التي يكون فيها الأسبوع للقيمة في حقل التاريخ (Format([Date],"ww")) مساويا للأسبوع السابق فقط (Format(Now(),"ww")-1).

استخدام الدالة Format في التعليمات البرمجية ل VBA 

ملاحظة

توضح الأمثلة التالية استخدام هذه الدالة في وحدة نمطية ل Visual Basic for Applications (VBA). لمزيد من المعلومات حول استخدام VBA، حدد "مرجع المطور" في القائمة المنسدلة بجوار "بحث" وأدخل مصطلح أو أكثر في مربع البحث.

يعرض هذا المثال الاستخدامات المختلفة للدالة Format لتنسيق القيم باستخدام كل من التنسيقات المسماة والتنسيقات المعرفة من قبل المستخدم. بالنسبة لفاصل التاريخ (/) وفاصل الوقت (:) والحرفي AM/PM، يعتمد الإخراج المنسق الفعلي الذي يعرضه النظام على الإعدادات المحلية للكمبيوتر الذي يتم تشغيل التعليمات البرمجية عليه. عندما يتم عرض الأوقات والتواريخ في بيئة التطوير، يتم استخدام تنسيق الوقت القصير وتنسيق التاريخ القصير للإعدادات المحلية للتعليمات البرمجية. وعند عرضه بواسطة التعليمات البرمجية قيد التشغيل، يتم استخدام التنسيق "وقت قصير" وتنسيق التنسيق "تاريخ قصير" للإعدادات المحلية للنظام، وقد يختلفان عن الإعدادات المحلية للتعليمات البرمجية. في هذا المثال، من المفترض أن تكون اللغة المحلية للغة الإنجليزية في الولايات المتحدة.

MyTime ويتم MyDate عرضها في بيئة التطوير باستخدام إعداد النظام الحالي للوقت القصير وإعداد التاريخ القصير.

Dim MyTime, MyDate, MyStr
MyTime = #17:04:23#
MyDate = #January 27, 1993#
' Returns current system time in the system-defined long time format.
MyStr = Format(Time, "Long Time")
' Returns current system date in the system-defined long date format.
MyStr = Format(Date, "Long Date")
MyStr = Format(MyTime, "h:m:s")    ' Returns "17:4:23".
MyStr = Format(MyTime, "hh:mm:ss AMPM")    ' Returns "05:04:23 PM".
MyStr = Format(MyDate, "dddd, mmm d yyyy")    ' Returns "Wednesday,
    ' Jan 27 1993".
' If format is not supplied, a string is returned.
MyStr = Format(23)    ' Returns "23".
' User-defined formats.
MyStr = Format(5459.4, "##,##0.00")    ' Returns "5,459.40".
MyStr = Format(334.9, "###0.00")    ' Returns "334.90".
MyStr = Format(5, "0.00%")    ' Returns "500.00%".
MyStr = Format("HELLO", "<")    ' Returns "hello".
MyStr = Format("This is it", ">")    ' Returns "THIS IS IT".

      

استخدام التنسيق مع سلاسل فارغة

في الإصدار 2.0 والإصدارات السابقة من Microsoft Access، يمكنك استخدام الدالة Format لإرجاع قيمة واحدة لسلسلة فارغة وأخرى لقيمة. على سبيل المثال، يمكنك استخدام تعبير تنسيق كما يلي مع الدالة Format لإرجاع قيمة السلسلة المناسبة من التعليمات البرمجية:

Dim varX As Variant
Dim varStrX As Variant
' Assign some value to varStrX and pass to Format function.
varX = Format(varStrX, "@;ZLS;Null")

في الإصدارات 97 من Microsoft Access والإصدارات الأحدث، يجب إجراء اختبار منفصل لحالة Null ، ثم إرجاع القيمة المناسبة استنادا إلى النتيجة. على سبيل المثال، يمكنك استخدام الدالة IIf في تعبير باستخدام الدالة Format كما يلي:

varX = IIf(IsNull(varStrX),"Null", Format(varStrX, "@;ZLS"))

ينطبق هذا التغيير فقط عند استخدام الدالة "تنسيق " لتنسيق سلسلة تعتمد على ما إذا كانت سلسلة فارغة أو قيمة خالية. تستمر تعبيرات التنسيق الأخرى المستخدمة مع الدالة Format في العمل كما كان يحدث في الإصدارات السابقة.

إذا قمت بتحويل قاعدة بيانات من Microsoft Access الإصدار 2.0 والإصدارات السابقة إلى Microsoft Access 2002 أو إصدار أحدث، يجب تغيير التعليمات البرمجية لإجراء اختبار منفصل لحالة Null

دالات السلاسل وكيفية استخدامها