Applies ToExcel for Microsoft 365 Excel 2024 Excel 2021 Excel 2019 Excel 2016

ในตัวแบบข้อมูล แต่ละคอลัมน์จะมีชนิดข้อมูลที่สัมพันธ์กันที่ระบุชนิดของข้อมูลที่คอลัมน์สามารถมีได้ ได้แก่ จํานวนเต็ม ตัวเลขทศนิยม ข้อความ ข้อมูลทางการเงิน วันที่และเวลา และอื่นๆ ชนิดข้อมูลยังกําหนดชนิดของการดําเนินการที่คุณสามารถทําได้ในคอลัมน์ และจํานวนหน่วยความจําที่ใช้เพื่อจัดเก็บค่าในคอลัมน์

ถ้าคุณกําลังใช้ add-in Power Pivot คุณสามารถเปลี่ยนชนิดข้อมูลของคอลัมน์ได้ คุณอาจจําเป็นต้องทําเช่นนี้ถ้าคอลัมน์วันที่ถูกนําเข้าเป็นสตริง แต่คุณต้องการให้เป็นอย่างอื่น สําหรับข้อมูลเพิ่มเติม ให้ดูที่ ตั้งค่าชนิดข้อมูลของคอลัมน์ ใน Power Pivot

ในบทความนี้

สรุปชนิดข้อมูล

ตารางต่อไปนี้แสดงรายการชนิดข้อมูลที่ได้รับการสนับสนุนในตัวแบบข้อมูล เมื่อคุณนําเข้าข้อมูลหรือใช้ค่าในสูตร แม้ว่าแหล่งข้อมูลต้นฉบับจะมีชนิดข้อมูลที่แตกต่างกัน ข้อมูลจะถูกแปลงเป็นชนิดข้อมูลใดชนิดข้อมูลหนึ่งต่อไปนี้ ค่าที่เป็นผลลัพธ์จากสูตรจะใช้ชนิดข้อมูลเหล่านี้ด้วย

ชนิดข้อมูลใน Excel

ชนิดข้อมูลใน DAX

คำอธิบาย

จํานวนเต็ม

ค่าจํานวนเต็ม 1, 2 บิต (แปดไบต์) 64 บิต

ตัวเลขที่ไม่มีตําแหน่งทศนิยม จํานวนเต็มอาจเป็นจํานวนบวกหรือจํานวนลบ แต่ต้องเป็นจํานวนเต็มระหว่าง -9,223,372,036,854,775,808 (-2^63) และ 9,223,372,036,854,775,807 (2^63-1)

ตัวเลขทศนิยม

จํานวนจริง 64 บิต (แปดไบต์) 1, 2

จํานวนจริงคือตัวเลขที่สามารถมีตําแหน่งทศนิยมได้ ตัวเลขจริงครอบคลุมค่าต่างๆ มากมาย:

ค่าลบจาก -1.79E +308 ถึง -2.23E -308

ศูนย์

ค่าบวกจาก 2.23E -308 ถึง 1.79E + 308

อย่างไรก็ตาม จํานวนเลขนัยสําคัญจะจํากัดไว้ที่ 15 ตําแหน่ง

TRUE/FALSE

บูลีน

ค่า True หรือ False อย่างใดอย่างหนึ่ง

ข้อความ

สตริง

สตริงข้อมูลอักขระ Unicode สามารถเป็นสตริง ตัวเลข หรือวันที่ที่แสดงในรูปแบบข้อความ

ความยาวสตริงสูงสุดคืออักขระ Unicode 268,435,456 อักขระ (256 ล้านอักขระ) หรือ 536,870,912 ไบต์

วันที่

วันที่/เวลา

วันที่และเวลาในการแสดงวันที่และเวลาที่ยอมรับ

วันที่ที่ถูกต้องคือวันที่ทั้งหมดหลังจากวันที่ 1 มกราคม 1900

สกุลเงิน

สกุลเงิน

ชนิดข้อมูลสกุลเงินอนุญาตให้มีค่าระหว่าง -922,337,203,685,477.5808 ถึง 922,337,203,685,477.5807 ที่มีทศนิยมสี่หลักที่มีความแม่นยําคงที่

N/A

ว่าง

ค่าว่างคือชนิดข้อมูลใน DAX ที่แสดงแทนและแทนที่ SQL Nulls คุณสามารถสร้างช่องว่างโดยใช้ฟังก์ชัน BLANK และทดสอบช่องว่างโดยใช้ฟังก์ชันตรรกะ ISBLANK

1 สูตร DAX ไม่สนับสนุนชนิดข้อมูลที่เล็กกว่าที่แสดงในตาราง

2 ถ้าคุณพยายามนําเข้าข้อมูลที่มีค่าตัวเลขขนาดใหญ่มาก การนําเข้าอาจล้มเหลวโดยมีข้อผิดพลาดต่อไปนี้:

ข้อผิดพลาดฐานข้อมูลในหน่วยความจํา: คอลัมน์ 'ชื่อคอลัมน์ <>' ของตาราง 'ชื่อตาราง <>' มีค่า '1.7976931348623157e+308' ซึ่งไม่ได้รับการสนับสนุน การดําเนินการถูกยกเลิกแล้ว

ข้อผิดพลาดนี้เกิดขึ้นเนื่องจาก Power Pivot ใช้ค่านั้นเพื่อแทนค่า Null ค่าในรายการต่อไปนี้เป็นคําเหมือนสําหรับค่า Null:

ค่า

9223372036854775807

-9223372036854775808

1.7976931348623158e+308

2.2250738585072014e-308

เอาค่าออกจากข้อมูลของคุณ แล้วลองนําเข้าอีกครั้ง

ชนิดข้อมูลตาราง

DAX ใช้ชนิดข้อมูลตารางในหลายฟังก์ชัน เช่น การรวมและการคํานวณตัวแสดงเวลา บางฟังก์ชันจําเป็นต้องมีการอ้างอิงไปยังตาราง ฟังก์ชันอื่นๆ จะส่งกลับตารางที่สามารถใช้เป็นข้อมูลป้อนเข้าไปยังฟังก์ชันอื่นได้ ในบางฟังก์ชันที่ต้องใช้ตารางเป็นข้อมูลป้อนเข้า คุณสามารถระบุนิพจน์ที่ประเมินเป็นตาราง ได้ สําหรับฟังก์ชันบางอย่าง จําเป็นต้องมีการอ้างอิงถึงตารางพื้นฐาน สําหรับข้อมูลเกี่ยวกับความต้องการของฟังก์ชันเฉพาะ ให้ดูที่ การอ้างอิงฟังก์ชัน DAX

การแปลงชนิดข้อมูลโดยนัยและชัดแจ้งในสูตร DAX

แต่ละฟังก์ชัน DAX มีข้อกําหนดเฉพาะเกี่ยวกับชนิดของข้อมูลที่ใช้เป็นอินพุตและผลลัพธ์ ตัวอย่างเช่น ฟังก์ชันบางฟังก์ชันต้องการจํานวนเต็มสําหรับบางอาร์กิวเมนต์และวันที่สําหรับฟังก์ชันอื่นๆ ฟังก์ชันอื่นๆ ต้องใช้ข้อความหรือตาราง

ถ้าข้อมูลในคอลัมน์ที่คุณระบุเป็นอาร์กิวเมนต์เข้ากันไม่ได้กับชนิดข้อมูลที่ฟังก์ชันต้องการ DAX ในหลายกรณีจะส่งกลับข้อผิดพลาด อย่างไรก็ตาม ทุกที่ที่เป็นไปได้ DAX จะพยายามแปลงข้อมูลเป็นชนิดข้อมูลที่จําเป็นโดยนัย ตัวอย่างเช่น

  • คุณสามารถพิมพ์วันที่เป็นสตริง และ DAX จะแยกวิเคราะห์สตริงและพยายามแคสต์เป็นรูปแบบวันที่และเวลาของ Windows รูปแบบใดรูปแบบหนึ่ง

  • คุณสามารถเพิ่ม TRUE + 1 และได้ผลลัพธ์เป็น 2 เนื่องจาก TRUE จะถูกแปลงโดยนัยเป็นตัวเลข 1 และจะดําเนินการ 1+1

  • ถ้าคุณเพิ่มค่าในสองคอลัมน์ และค่าหนึ่งค่าถูกแสดงเป็นข้อความ ("12") และอีกค่าหนึ่งเป็นตัวเลข (12) DAX จะแปลงสตริงเป็นตัวเลขโดยนัย แล้วทําการบวกสําหรับผลลัพธ์ที่เป็นตัวเลข นิพจน์ต่อไปนี้ส่งกลับค่า 44: = "22" + 22

  • ถ้าคุณพยายามเรียงตัวเลขสองตัวเข้าด้วยกัน Excel จะแสดงเป็นสตริง แล้วเรียงต่อกัน นิพจน์ต่อไปนี้ส่งกลับ "1234": = 12 & 34

ตารางต่อไปนี้สรุปการแปลงชนิดข้อมูลโดยนัยที่ดําเนินการในสูตร Excel จะแปลงโดยนัยทุกครั้งที่เป็นไปได้ ตามที่กําหนดโดยการดําเนินการที่ระบุ

ตารางการแปลงข้อมูลโดยนัย

ชนิดของการแปลงที่ดําเนินการจะถูกกําหนดโดยตัวดําเนินการ ซึ่งแคสต์ค่าที่ต้องใช้ก่อนที่จะดําเนินการที่ร้องขอ ตารางเหล่านี้แสดงรายการตัวดําเนินการ และระบุการแปลงที่จะดําเนินการกับชนิดข้อมูลแต่ละชนิดในคอลัมน์เมื่อมีการจับคู่กับชนิดข้อมูลในแถวที่ตัดกัน

หมายเหตุ: ชนิดข้อมูลข้อความจะไม่รวมอยู่ในตารางเหล่านี้ เมื่อตัวเลขถูกแสดงเป็นรูปแบบข้อความ ในบางกรณี Power Pivot จะพยายามกําหนดชนิดตัวเลขและแสดงเป็นตัวเลข

การบวก (+)

ตัวดําเนินการ (+)

INTEGER

CURRENCY

REAL

วันที่/เวลา

INTEGER

INTEGER

CURRENCY

REAL

วันที่/เวลา

CURRENCY

CURRENCY

CURRENCY

REAL

วันที่/เวลา

REAL

REAL

REAL

REAL

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

ตัวอย่างเช่น ถ้าจํานวนจริงถูกใช้ในการดําเนินการบวกร่วมกับข้อมูลสกุลเงิน ค่าทั้งสองจะถูกแปลงเป็น REAL และผลลัพธ์จะถูกส่งกลับเป็น REAL

การลบ (-)

ในตารางต่อไปนี้ ส่วนหัวของแถวจะเป็นเครื่องหมายลบ (ด้านซ้าย) และส่วนหัวของคอลัมน์เป็นการลบ (ด้านขวา)

ตัวดําเนินการ (-)

INTEGER

CURRENCY

REAL

วันที่/เวลา

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

วันที่/เวลา

ตัวอย่างเช่น ถ้าวันที่ถูกใช้ในการดําเนินการลบกับชนิดข้อมูลอื่น ค่าทั้งสองจะถูกแปลงเป็นวันที่ และค่าที่ส่งกลับจะเป็นวันที่ด้วย

หมายเหตุ: ตัวแบบข้อมูลยังสนับสนุนตัวดําเนินการ Unary ( (ค่าลบ) ด้วย แต่ตัวดําเนินการนี้จะไม่เปลี่ยนชนิดข้อมูลของตัวถูกดําเนินการ

การคูณ (*)

ตัวดําเนินการ (*)

INTEGER

CURRENCY

REAL

วันที่/เวลา

INTEGER

INTEGER

CURRENCY

REAL

INTEGER

CURRENCY

CURRENCY

REAL

CURRENCY

CURRENCY

REAL

REAL

CURRENCY

REAL

REAL

ตัวอย่างเช่น ถ้าจํานวนเต็มรวมกับจํานวนจริงในการดําเนินการคูณ ตัวเลขทั้งสองจะถูกแปลงเป็นจํานวนจริง และค่าที่ส่งกลับจะเป็น REAL ด้วย

ฝ่าย (/)

ในตารางต่อไปนี้ ส่วนหัวของแถวเป็นตัวเศษ และส่วนหัวของคอลัมน์เป็นตัวส่วน

ตัวดําเนินการ (/)

(แถว/คอลัมน์)

INTEGER

CURRENCY

REAL

วันที่/เวลา

INTEGER

REAL

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

REAL

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

วันที่/เวลา

REAL

REAL

REAL

REAL

ตัวอย่างเช่น ถ้าจํานวนเต็มรวมกับค่าสกุลเงินในการดําเนินการหาร ค่าทั้งสองจะถูกแปลงเป็นจํานวนจริง และผลลัพธ์จะเป็นจํานวนจริงด้วย

ตัวดำเนินการเปรียบเทียบ

ในนิพจน์การเปรียบเทียบ ค่าบูลีนจะถือว่ามากกว่าค่าสตริงและค่าสตริงจะถือว่ามากกว่าค่าตัวเลขหรือค่าวันที่/เวลา ตัวเลขและค่าวันที่/เวลาจะถือว่ามีลําดับเดียวกัน ไม่มีการแปลงโดยนัยสําหรับค่าบูลีนหรือสตริง BLANK หรือค่าว่างจะถูกแปลงเป็น 0/""/false ขึ้นอยู่กับชนิดข้อมูลของค่าที่เปรียบเทียบอื่นๆ

นิพจน์ DAX ต่อไปนี้แสดงลักษณะการทํางานนี้:

=IF(FALSE()>"true","Expression is true", "Expression is false") ส่งกลับ "นิพจน์เป็นจริง"

=IF("12">12,"นิพจน์เป็นจริง", "นิพจน์เป็นเท็จ") จะส่งกลับ "นิพจน์เป็นจริง"

=IF("12"=12,"นิพจน์เป็นจริง", "นิพจน์เป็นเท็จ") ส่งกลับ "นิพจน์เป็นเท็จ"

การแปลงจะดําเนินการโดยนัยสําหรับชนิดตัวเลขหรือวันที่/เวลาตามที่อธิบายไว้ในตารางต่อไปนี้:

ตัวดําเนินการเปรียบเทียบ

INTEGER

CURRENCY

REAL

วันที่/เวลา

INTEGER

INTEGER

CURRENCY

REAL

REAL

CURRENCY

CURRENCY

CURRENCY

REAL

REAL

REAL

REAL

REAL

REAL

REAL

วันที่/เวลา

REAL

REAL

REAL

วันที่/เวลา

ด้านบนของหน้า

การจัดการค่าว่าง สตริงว่าง และค่าศูนย์

ใน DAX ค่า Null ค่าว่าง เซลล์ว่าง หรือค่าที่หายไปทั้งหมดจะแสดงด้วยชนิดค่าใหม่เดียวกัน ว่างเปล่า คุณยังสามารถสร้างช่องว่างโดยใช้ฟังก์ชัน BLANK หรือทดสอบช่องว่างโดยใช้ฟังก์ชัน ISBLANK

วิธีที่ช่องว่างถูกจัดการในการดําเนินการ เช่น การบวกหรือการเรียงต่อกัน จะขึ้นอยู่กับแต่ละฟังก์ชัน ตารางต่อไปนี้สรุปความแตกต่างระหว่างสูตร DAX และสูตร Microsoft Excel ในลักษณะการจัดการช่องว่าง

Expression

DAX

Excel

ว่าง + ว่าง

เปล่า

0 (ศูนย์)

ว่าง +5

5

5

ว่าง * 5

เปล่า

0 (ศูนย์)

5/ว่าง

อินฟินิตี้

ข้อผิดพลาด

0/ว่าง

น่าน

ข้อผิดพลาด

ว่าง/ว่าง

เปล่า

ข้อผิดพลาด

FALSE หรือว่างเปล่า

FALSE

FALSE

เท็จและว่างเปล่า

FALSE

FALSE

TRUE หรือ BLANK

TRUE

TRUE

TRUE และว่างเปล่า

FALSE

TRUE

ว่างหรือว่างเปล่า

เปล่า

ข้อผิดพลาด

ว่างและว่างเปล่า

เปล่า

ข้อผิดพลาด

สําหรับรายละเอียดเกี่ยวกับวิธีที่ฟังก์ชันหรือตัวดําเนินการใดฟังก์ชันหนึ่งจัดการกับช่องว่าง ให้ดูที่หัวข้อแต่ละหัวข้อสําหรับแต่ละฟังก์ชัน DAX ในส่วน การอ้างอิงฟังก์ชัน DAX

ด้านบนของหน้า

ต้องการความช่วยเหลือเพิ่มเติมหรือไม่

ต้องการตัวเลือกเพิ่มเติมหรือไม่

สํารวจสิทธิประโยชน์ของการสมัครใช้งาน เรียกดูหลักสูตรการฝึกอบรม เรียนรู้วิธีการรักษาความปลอดภัยอุปกรณ์ของคุณ และอื่นๆ

ชุมชนช่วยให้คุณถามและตอบคําถาม ให้คําติชม และรับฟังจากผู้เชี่ยวชาญที่มีความรู้มากมาย