Date.FromText แปลงค่าข้อความให้เป็นค่าวันที่ รองรับการระบุรูปแบบวันที่และภาษาที่แตกต่างกัน ฟังก์ชันนี้จำเป็นสำหรับการอ่านข้อมูลวันที่จากแหล่งข้อมูลภายนอก การจัดการข้อมูลที่มีรูปแบบวันที่หลากหลาย และการทำให้ข้อมูลเป็นมาตรฐาน
| อาร์กิวเมนต์ | ชนิด | ค่าเริ่มต้น | คำอธิบาย |
|---|---|---|---|
| text | nullable text | ค่าข้อความที่ต้องการแปลงเป็นวันที่ | |
| [options]ไม่บังคับ | any | null | ระเบียนที่ระบุ Format และ Culture หรือเพียงข้อความ Culture ตัวอย่าง: [Format=”dd MMM yyyy”, Culture=”en-US”] |
[ ] = อาร์กิวเมนต์ที่ไม่บังคับ
Date.FromText(text, [options]) ใช้แปลงค่าข้อความให้เป็นค่าวันที่ (date) โดยมีความยืดหยุ่นในการระบุรูปแบบและภาษา ส่วนที่สำคัญคือมันช่วยแปลงข้อมูลวันที่จากแหล่งข้อมูลภายนอก (CSV, Excel, API) ที่มีรูปแบบต่างๆ ให้เป็นวันที่มาตรฐาน
ที่เจ๋งคือ Date.FromText มีความชาญฉลาดพอที่จะแปลงวันที่ในภาษาต่างๆ เช่น “30 Dez 2010” (เยอรมัน) หรือ “20 gen. 2023” (อิตาลี) ได้อย่างถูกต้อง เพียงแค่บอกว่ารูปแบบคืออะไรและใช้ภาษาไหน
ส่วนตัวผมใช้ Date.FromText มากเมื่อทำงานกับข้อมูลจากต่างประเทศ หรือเวลาที่ข้อมูลเก่าๆ อยู่ในรูปแบบ “31 Dec 2010” แล้วต้องแปลงให้เป็นวันที่ที่ Power Query จะจำ ประสิทธิภาพ 10 out of 10 ครับ 😎
แปลงข้อมูลวันที่ที่อยู่ในรูปแบบข้อความจากไฟล์ CSV หรือข้อความธรรมดา
รวมข้อมูลจากหลายแหล่งที่มีรูปแบบวันที่ต่างกัน แล้วแปลงทั้งหมดเป็นมาตรฐานเดียว
แปลงข้อมูลวันที่ที่เขียนเป็นภาษาต่างประเทศ (เช่น ภาษาเยอรมัน ภาษาอิตาลี)
รูปแบบ ISO (yyyy-MM-dd) เป็นค่าเริ่มต้น Date.FromText จะแปลงได้ทันทีโดยไม่ต้องระบุ Format หรือ Culture ใช้ได้ทั่วโลก
ระบุ Format="dd MMM yyyy" (วัน เดือนสั้น ปี) และ Culture="de-DE" (เยอรมัน) เพื่อให้ Date.FromText รู้ว่า "Dez" = ธันวาคม ใช้เมื่อข้อมูลมาจากระบบเยอรมัน
ใช้ Table.TransformColumns กับ Date.FromText เพื่อแปลงทั้งคอลัมน์วันที่พร้อมกัน แต่ละแถวจะแปลงผ่าน each _ โดยใช้ Culture="it-IT" ให้รู้ว่าเดือน "gen" = มกราคม และ "lug" = กรกฎาคม
ดูจากข้อมูลจริง เช่น "31-12-2010" แล้วเขียน Format="dd-MM-yyyy" ให้ตรงกัน ห้ามจำ! เปิด docs .NET Custom Date and Time Format Strings ดูเพิ่มเติม
Date.FromText ใช้กับข้อความเท่านั้น รองรับ Format และ Culture ส่วน Date.From เป็น generic function ที่ลองแปลงจากประเภทใดๆ ที่ Power Query รู้จัก
ใช้ DateTime.FromText แทน Date.FromText ถ้าข้อความมีส่วนเวลา เช่น "2010-12-31T14:30:00" Date.FromText ใช้ได้กับข้อความวันที่เท่านั้น
ได้ แต่จะใช้ Culture.Current ของ Power Query เสี่ยงที่ฟังก์ชันจะแปลงผิดถ้า PC ของผู้ใช้ตั้ง culture ต่างกัน แนะนำระบุอย่างชัดเจน เช่น Culture="en-US"
ฟังก์ชันที่ผู้เขียนโยงไว้กับ Date.FromText จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง
Date.AddYears เพิ่มจำนวนปีที่ระบุให้กับค่า date datetime หรือ datetimezone คืนค่าเดียวกันกับประเภทข้อมูลอินพุต เก็บรักษาส่วนของเวลาไว้เหมือนเดิม ฟังก์ชันนี้จำเป็นสำหรับการคำนวณวันครบรอบปี การวางแผนระยะยาว และการวิเคราะห์ข้อมูลตามชั้นปี
Date.From แปลงข้อมูลหลายรูปแบบ (ข้อความ ตัวเลข DateTime DateTimeZone) เป็นค่า date ที่สามารถใช้ในการคำนวณและจัดรูปแบบได้ รองรับการระบุ culture สำหรับการแปลงวันที่ localized
Date.ToText แปลงค่า Date ให้เป็น Text String โดยสามารถกำหนด Format และ Culture ได้ตามต้องการ เหมาะสำหรับแสดงผลวันที่ในรูปแบบที่สวยงาม
DateTime.From แปลงค่าต่างๆ (Text, Date, Time, Number) ให้เป็นข้อมูลชนิด DateTime ด้วยการระบุค่าและรหัสภาษาทำให้สะดวกในการจัดการข้อมูลวันเวลาจากแหล่งต่างๆ
DateTime.FromText ใช้แปลงข้อความเป็นค่า datetime พร้อมรองรับรูปแบบและภาษาที่หลากหลาย
Comments
อีเมลของคุณจะไม่ถูกเผยแพร่