Applies ToMicrosoft 365 için Access Access 2024 Access 2021 Access 2019 Access 2016

Her işlev bir ifade belirli bir veri türü ile zorlamak için kullanılır.

Söz dizimi

CBool( ifade )

CByte( ifade )

CCur( ifade )

CDate( ifade )

CDbl( ifade )

CDec( ifade )

CInt( ifade )

CLng( ifade )

CSng( ifade )

CStr( ifade )

CVar( ifade )

Gerekli ifadebağımsız değişken herhangi bir dize ifadesi veya sayısal ifade.

Dönüş Türleri

İşlev adı, aşağıdaki gibi dönüş türünü belirler:

İşlev

Dönüş Türü

İfade bağımsız değişkeni aralığı

CBool

Boole

Herhangi bir geçerli dize veya sayısal ifade.

CByte

Byte

0 ile 255.

CCur

Para Birimi

-922.337.203.685.477.5808 - 922.337.203.685.477.5807.

CDate

Tarih

Geçerli herhangi bir tarih ifadesi.

CDbl

Double

-1,79769313486231E308 Negatif değerler için -4,94065645841247E-324; Pozitif değerler için 4,94065645841247E-324 - 1,79769313486232E308.

CDec

Decimal

Sıfır ölçekli sayılar için +/-79.228.162.514.264.337.593.543.950.335; yani ondalık basamak içermeyen sayılar. 28 ondalık basamak içeren sayılar için, aralık şu şekildedir: +/-7.9228162514264337593543950335. Sıfır hariç mümkün en küçük sayı 0.0000000000000000000000000001'dir.

CInt

Tamsayı

-32.768 - 32.767; kesirler yuvarlanmış.

CLng

Uzun

-2.147.483.648 - 2.147.483.647; kesirler yuvarlanmış.

CSng

Single

Negatif değerler için -3,402823E38 - -1,401298E-45; Pozitif değerler için 1.401298E-45 - 3.402823E38.

CStr

Dize

CStr için döndürür , ifade bağımsız değişkenine bağlıdır.

CVar

Varyant

Sayısallar için Çift ile aynı aralık. Sayısal olmayanlar için Dize ile aynı aralık.

Açıklamalar

İşleve geçirilen ifade dönüştürülmekte olan veri türü aralığının dışındaysa bir hata oluşur.

Genel olarak, bazı işlemlerin sonucunun varsayılan veri türü yerine belirli bir veri türü olarak ifade edilmesi gerektiğini göstermek için veri türü dönüştürme işlevlerini kullanarak kodunuzu belgeleyebilirsiniz. Örneğin, tek duyarlıklı, çift duyarlıklı veya tamsayı aritmetiğinin normal olarak gerçekleşeceği durumlarda para birimi aritmetiğini zorlamak için CCur kullanın.

Bir veri türünden diğerine uluslararası olarak farkında olan dönüştürmeler sağlamak için Val yerine veri türü dönüştürme işlevlerini kullanmanız gerekir. Örneğin, CCur kullandığınızda, bilgisayarınızın yerel ayarına bağlı olarak farklı ondalık ayırıcılar, farklı binlik ayırıcılar ve çeşitli para birimi seçenekleri düzgün bir şekilde tanınır.

Kesirli bölüm tam olarak 0,5 olduğunda, CInt ve CLng her zaman en yakın çift sayıya yuvarlar. Örneğin, 0,5 0'a yuvarlar ve 1,5 2'ye yuvarlar. CInt ve CLng , bir sayının kesirli kısmı yerine yuvarlayan Fix ve Int işlevlerinden farklıdır. Ayrıca, Fix ve Int her zaman geçirilenle aynı türde bir değer döndürür.

Tarihin tarihe veya saate dönüştürülip dönüştürülemediğini belirlemek için IsDate işlevini kullanın. CDate , tarih değişmez değerlerini ve saat değişmez değerlerinin yanı sıra kabul edilebilir tarih aralığındaki bazı sayıları tanır. Sayıyı tarihe dönüştürürken, tamsayı bölümü tarihe dönüştürülür. Sayının herhangi bir kesirli bölümü, gece yarısından başlayarak günün bir saatine dönüştürülür.

CDate , sisteminizin yerel ayarına göre tarih biçimlerini tanır. Gün, ay ve yılın doğru sırası, tanınan tarih ayarlarından biri dışında bir biçimde sağlanıp sağlanmadığını belirleyemeyebilir. Ayrıca, haftanın günü dizesini de içeriyorsa uzun tarih biçimi tanınmaz.

Visual Basic'in önceki sürümleriyle uyumluluk için bir CVDate işlevi de sağlanır. CVDate işlevinin söz dizimi CDate işleviyle aynıdır, ancak CVDate, gerçek tarih türü yerine alt türü Date olan bir Değişken döndürür. Artık bir iç Tarih türü olduğundan CVDate için başka bir gereksinim yoktur. Aynı etki, bir ifadeyi Tarihe dönüştürerek ve ardından bir Değişkene atayarak elde edilebilir. Bu teknik, diğer tüm iç türlerin eşdeğer Variant alt türlerine dönüştürülmesiyle tutarlıdır.

Not:  CDec işlevi ayrık bir veri türü döndürmez; bunun yerine, her zaman değeri Ondalık alt türüne dönüştürülen bir Değişken döndürür.

Sorgu örnekleri

Expression

Sonuçlar

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

"SalePrice", "FinalPrice" döndürür ve SalePrice değerinin Final Price değerinden büyük olup olmadığını değerlendirir. True ise "-1" ve false ise "0" döndürür.

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

"ProductID" döndürür,"Miktar" alanındaki değerleri bayt biçimine dönüştürür ve İfade1 Işlevi "ÜrünKimliği" sütununda görüntülenir, "Miktar" alanındaki değerleri Para Birimi biçimine dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "DateofSale" alanındaki değerleri Tarih biçimine dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "discount" alanındaki değerleri Çift biçime dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "discount" alanındaki değerleri Tamsayı biçimine dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "discount" alanındaki değerleri Uzun biçime dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "discount" alanındaki değerleri Tek biçime dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "Discount" alanındaki değerleri Dize biçimine dönüştürür ve İfade1 sütununda görüntülenir.

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

"ProductID" döndürür, "discount" alanındaki değerleri sayısal değerler için Double'a, Sayısal olmayan değerler için Dize'ye dönüştürür.

VBA örnekleri

Not: Aşağıdaki örneklerde, bu işlevin Visual Basic for Applications (VBA) modülünde kullanımı gösterilir. VBA ile çalışma hakkında daha fazla bilgi için bkz. VBA Başvurusuna Erişme.

CBool İşlevi

Bu örnek, bir ifadeyi Boole değerine dönüştürmek için CBool işlevini kullanır. İfade sıfır olmayan bir değer olarak değerlendirilirse , CBoolTrue döndürür; aksi takdirde False döndürür.

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 İşlevi

Bu örnek, bir ifadeyi Bayt'a dönüştürmek için CByte işlevini kullanır.

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

CCur İşlevi

Bu örnek, bir ifadeyi Para Birimine dönüştürmek için CCur işlevini kullanır.

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 İşlevi

Bu örnek, bir dizeyi Tarihe dönüştürmek için CDate işlevini kullanır. Genel olarak, tarih ve saatleri dize olarak sabit kodlama (bu örnekte gösterildiği gibi) önerilmez. Bunun yerine, #12/2/1969# ve #4:45:23 PM# gibi tarih değişmez değerlerini ve saat değişmez değerlerini kullanın.

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 İşlevi

Bu örnek, bir ifadeyi Double'a dönüştürmek için CDbl işlevini kullanır.

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

CDec İşlevi

Bu örnekte, sayısal bir değeri Ondalık değerine dönüştürmek için CDec işlevi kullanılır.

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

CInt İşlevi

Bu örnek, bir değeri Tamsayıya dönüştürmek için CInt işlevini kullanır.

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

CLng İşlevi

Bu örnek, bir değeri Long değerine dönüştürmek için CLng işlevini kullanır.

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 İşlevi

Bu örnekte, bir değeri Tek'e dönüştürmek için CSng işlevi kullanılır.

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 İşlevi

Bu örnek, sayısal bir değeri Dizeye dönüştürmek için CStr işlevini kullanır.

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

CVar İşlevi

Bu örnekte, bir ifadeyi Variant'a dönüştürmek için CVar işlevi kullanılır.

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

Daha fazla yardıma mı ihtiyacınız var?

Daha fazla seçenek mi istiyorsunuz?

Abonelik avantajlarını keşfedin, eğitim kurslarına göz atın, cihazınızın güvenliğini nasıl sağlayacağınızı öğrenin ve daha fazlasını yapın.

Topluluklar, soru sormanıza ve soruları yanıtlamanıza, geri bildirimde bulunmanıza ve zengin bilgiye sahip uzmanlardan bilgi almanıza yardımcı olur.