Applies ToAccess لـ Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

تالإكراه كل دالة على تعبير إلى نوع البيانات معين.

بناء الجملة

CBool( expression )

CByte( expression )

CCur( expression )

CDate( expression )

CDbl ( تعبير )

CDec ( تعبير )

CInt ( تعبير )

CLng ( تعبير )

CSng( expression )

CStr( expression )

CVar ( تعبير )

وسيطة التعبير المطلوب هو أي تعبير السلسلة أو تعبير رقمي.

أنواع الإعادة

يحدد اسم الدالة نوع الإرجاع كما هو موضح في ما يلي:

الدالة

نوع المرجع

نطاق وسيطة التعبير

CBool

منطقي

أي سلسلة أو تعبير رقمي صالح.

CByte

البايت

من 0 إلى 255.

CCur

العملة

-922,337,203,685,477.5808 إلى 922,337,203,685,477.5807.

CDate

التاريخ

أي تعبير تاريخ صالح.

CDbl

مزدوج

-1.79769313486231E308 إلى -4.94065645841247E-324 للقيم السالبة؛ 4.94065645841247E-324 إلى 1.79769313486232E308 للقيم الموجبة.

CDec

عشري

+/-79,228,162,514,264,337,593,543,950,335 للأرقام ذات الحجم الصفري، أي الأرقام التي لا تحتوي على منازل عشرية. بالنسبة للأرقام التي بها 28 منزلة عشرية، يكون النطاق +/-7.9228162514264337593543950335. أصغر رقم ممكن غير صفري هو 0.000000000000000000000000000001.

CInt

العدد الصحيح

-768 32 إلى 767 32؛ يتم تقريب الكسور.

CLng

طويله

-648 483 483 2 إلى 647 483 2 147 2؛ يتم تقريب الكسور.

CSng

مفرد

-3.402823E38 إلى -1.401298E-45 للقيم السالبة؛ 1.401298E-45 إلى 3.402823E38 للقيم الموجبة.

CStr

String

تعتمد إرجاعات CStr على وسيطة التعبير .

CVar

متغير

نفس النطاق مثل Double للرقم. نفس نطاق السلسلة لغير الرقميات.

ملاحظات

إذا كان التعبير الذي تم تمريره إلى الدالة خارج نطاق نوع البيانات الذي يتم تحويله إليه، يحدث خطأ.

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

يجب عليك استخدام دالات تحويل نوع البيانات بدلا من Val لتوفير تحويلات مدركة دوليا من نوع بيانات إلى آخر. على سبيل المثال، عند استخدام CCur، يتم التعرف على فواصل عشرية مختلفة وفواصل آلاف مختلفة وخيارات عملة مختلفة بشكل صحيح اعتمادا على إعداد الإعدادات المحلية للكمبيوتر.

عندما يكون الجزء الكسري بالضبط 0.5، يقوم CIntوCLng دائما بتقريبه إلى أقرب رقم زوجي. على سبيل المثال، 0.5 تقريب إلى 0، و1.5 جولات إلى 2. يختلف CIntوCLng عن الدالتين Fix و Int، اللتين تقتطاعان الجزء الكسري من الرقم بدلا من الدوران. أيضا، ترجع الدالة Fix و Int دائما قيمة من نفس النوع الذي يتم تمريره.

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

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

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

ملاحظة: لا ترجع الدالة CDec نوع بيانات منفصلا؛ بدلا من ذلك، يقوم دائما بإرجاع متغير تم تحويل قيمته إلى نوع فرعي عشري .

أمثلة الاستعلام

تعبير

النتائج

SELECT SalePrice,FinalPrice,CBool(SalePrice>FinalPrice) AS Expr1 FROM productSales;

إرجاع "SalePrice" و"FinalPrice" وتقييم ما إذا كان SalePrice أكبر من السعر النهائي. إرجاع "-1" إذا كان صحيحا و"0" إذا كان خطأ.

SELECT ProductID, CByte(Quantity) AS Expr1 FROM productSales;

إرجاع "ProductID"، وتحويل القيم الموجودة في حقل "الكمية" إلى تنسيق وحدات البايت وعرضها في العمود Expr1 إرجاع "ProductID"، وتحويل القيم الموجودة في حقل "الكمية" إلى تنسيق العملة وعرضها في العمود Expr1.

SELECT ProductID, CDate(DateofSale) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم الموجودة في حقل "DateofSale" إلى تنسيق التاريخ ويعرض في العمود Expr1.

SELECT ProductID, CDbl(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم الموجودة في حقل "الخصم" إلى تنسيق مزدوج ويعرض في العمود Expr1.

SELECT ProductID, CInt(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم الموجودة في حقل "الخصم" إلى تنسيق عدد صحيح ويعرض في العمود Expr1.

SELECT ProductID, CLng(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم في حقل "الخصم" إلى تنسيق طويل ويعرض في العمود Expr1.

SELECT ProductID, CSng(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم الموجودة في حقل "الخصم" إلى تنسيق فردي ويعرض في العمود Expr1.

SELECT ProductID, CStr(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، يحول القيم الموجودة في حقل "الخصم" إلى تنسيق سلسلة ويعرض في العمود Expr1.

SELECT ProductID, CVar(Discount) AS Expr1 FROM productSales;

إرجاع "ProductID"، تحويل القيم في حقل "الخصم" إلى مزدوج للقيم الرقمية وسلسلة للقيم غير الرقمية.

أمثلة VBA

ملاحظة: توضح الأمثلة التالية استخدام هذه الدالة في وحدة Visual Basic for Applications (VBA). لمزيد من المعلومات حول العمل مع VBA، راجع مرجع Access VBA.

الدالة CBool

يستخدم هذا المثال الدالة CBool لتحويل تعبير إلى منطقي. إذا تم تقييم التعبير إلى قيمة غير صفرية، فإن CBool ترجع True؛ وإلا، فإنه يرجع False.

Dim A, B, Check
A = 5: B = 5    ' Initialize variables.
Check = CBool(A = B)    ' Check contains True.
A = 0    ' Define variable.
Check = CBool(A)    ' Check contains False.

الدالة CByte

يستخدم هذا المثال الدالة CByte لتحويل تعبير إلى بايت.

Dim MyDouble, MyByte
MyDouble = 125.5678    ' MyDouble is a Double.
MyByte = CByte(MyDouble)    ' MyByte contains 126.

الدالة CCur

يستخدم هذا المثال الدالة CCur لتحويل تعبير إلى عملة.

Dim MyDouble, MyCurr
MyDouble = 543.214588    ' MyDouble is a Double.
MyCurr = CCur(MyDouble * 2)    
' Convert result of MyDouble * 2 (1086.429176) to a 
' Currency (1086.4292).

دالة CDate

يستخدم هذا المثال الدالة CDate لتحويل سلسلة إلى تاريخ. بشكل عام، لا يوصى بتواريخ وأوقات الترميز المضمن كسلاسل (كما هو موضح في هذا المثال). استخدم القيم الحرفية للتاريخ والحرفيات الزمنية، مثل #2/12/1969# و#4:45:23 مساء#، بدلا من ذلك.

Dim MyDate, MyShortDate, MyTime, MyShortTime
MyDate = "February 12, 1969" 
' Convert to Date data type.
MyShortDate = CDate(MyDate)
MyTime = "4:35:47 PM" 
' Convert to Date data type.
MyShortTime = CDate(MyTime)

دالة CDbl

يستخدم هذا المثال الدالة CDbl لتحويل تعبير إلى مزدوج.

Dim MyCurr, MyDouble
MyCurr = CCur(234.456784)
' Convert result to a Double.
MyDouble = CDbl(MyCurr * 8.2 * 0.01)

دالة CDec

يستخدم هذا المثال الدالة CDec لتحويل قيمة رقمية إلى رقم عشري.

Dim MyDecimal, MyCurr
MyCurr = 10000000.0587    ' MyCurr is a Currency.
MyDecimal = CDec(MyCurr)     ' MyDecimal is a Decimal.

الدالة CInt

يستخدم هذا المثال الدالة CInt لتحويل قيمة إلى عدد صحيح.

Dim MyDouble, MyInt
MyDouble = 2345.5678    ' MyDouble is a Double.
MyInt = CInt(MyDouble)    ' MyInt contains 2346.

الدالة CLng

يستخدم هذا المثال الدالة CLng لتحويل قيمة إلى Long.

Dim MyVal1, MyVal2, MyLong1, MyLong2
MyVal1 = 25427.45
MyVal2 = 25427.55  ' MyVal1, MyVal2 are Doubles.
MyLong1 = CLng(MyVal1)
' MyLong1 contains 25427.
MyLong2 = CLng(MyVal2)
' MyLong2 contains 25428.

الدالة CSng

يستخدم هذا المثال الدالة CSng لتحويل قيمة إلى واحد.

Dim MyDouble1, MyDouble2, MySingle1, MySingle2
' MyDouble1, MyDouble2 are Doubles.
MyDouble1 = 75.3421115: MyDouble2 = 75.3421555
MySingle1 = CSng(MyDouble1)
' MySingle1 contains 75.34211.
MySingle2 = CSng(MyDouble2)
' MySingle2 contains 75.34216.

الدالة CStr

يستخدم هذا المثال الدالة CStr لتحويل قيمة رقمية إلى سلسلة.

Dim MyDouble, MyString
MyDouble = 437.324    ' MyDouble is a Double.
MyString = CStr(MyDouble)
' MyString contains "437.324".

الدالة CVar

يستخدم هذا المثال الدالة CVar لتحويل تعبير إلى متغير.

Dim MyInt, MyVar
MyInt = 4534    ' MyInt is an Integer.
MyVar = CVar(MyInt & "000") 
' MyVar contains the string 4534000.

هل تحتاج إلى مزيد من المساعدة؟

الخروج من الخيارات إضافية؟

استكشف مزايا الاشتراك، واستعرض الدورات التدريبية، وتعرف على كيفية تأمين جهازك، والمزيد.

تساعدك المجتمعات على طرح الأسئلة والإجابة عليها، وتقديم الملاحظات، وسماعها من الخبراء ذوي الاطلاع الواسع.