Thep Excel

Date.FromTextแปลงข้อความเป็นวันที่

Date.FromText แปลงค่าข้อความให้เป็นค่าวันที่ รองรับการระบุรูปแบบวันที่และภาษาที่แตกต่างกัน ฟังก์ชันนี้จำเป็นสำหรับการอ่านข้อมูลวันที่จากแหล่งข้อมูลภายนอก การจัดการข้อมูลที่มีรูปแบบวันที่หลากหลาย และการทำให้ข้อมูลเป็นมาตรฐาน

fx
=Date.FromText(text, [options]) as nullable date

ความนิยม7/10
ความยาก3/10
ประโยชน์7/10

อัปเดต 12 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
text nullable text ค่าข้อความที่ต้องการแปลงเป็นวันที่
[options]ไม่บังคับ any null ระเบียนที่ระบุ Format และ Culture หรือเพียงข้อความ Culture ตัวอย่าง: [Format=”dd MMM yyyy”, Culture=”en-US”]

[ ] = อาร์กิวเมนต์ที่ไม่บังคับ

Additional Notes

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 ครับ 😎

How it works

อ่านข้อมูลวันที่จากไฟล์ข้อความ

แปลงข้อมูลวันที่ที่อยู่ในรูปแบบข้อความจากไฟล์ CSV หรือข้อความธรรมดา

จัดการวันที่หลายรูปแบบ

รวมข้อมูลจากหลายแหล่งที่มีรูปแบบวันที่ต่างกัน แล้วแปลงทั้งหมดเป็นมาตรฐานเดียว

แปลงข้อมูลตามภาษาเฉพาะ

แปลงข้อมูลวันที่ที่เขียนเป็นภาษาต่างประเทศ (เช่น ภาษาเยอรมัน ภาษาอิตาลี)

Examples

ตัวอย่างที่ 1: แปลง ISO format (แบบอัตโนมัติ)Date.FromText("2010-12-31")

รูปแบบ ISO (yyyy-MM-dd) เป็นค่าเริ่มต้น Date.FromText จะแปลงได้ทันทีโดยไม่ต้องระบุ Format หรือ Culture ใช้ได้ทั่วโลก

fx
=Date.FromText("2010-12-31")

ผลลัพธ์#date(2010, 12, 31)
ตัวอย่างที่ 2: แปลงด้วยรูปแบบเยอรมันDate.FromText("30 Dez 2010", [Format="dd MMM yyyy", Culture="de-DE"])

ระบุ Format="dd MMM yyyy" (วัน เดือนสั้น ปี) และ Culture="de-DE" (เยอรมัน) เพื่อให้ Date.FromText รู้ว่า "Dez" = ธันวาคม ใช้เมื่อข้อมูลมาจากระบบเยอรมัน

fx
=Date.FromText("30 Dez 2010", [Format="dd MMM yyyy", Culture="de-DE"])

ผลลัพธ์#date(2010, 12, 30)
ตัวอย่างที่ 3: ใช้ Table.TransformColumns แปลงทั้งคอลัมน์let Sales = #table( type table [Date = text, Amount = number], {{"20 gen. 2023", 1500}, {"18 lug. 2024", 2000}} ), ConvertedDates = Table.TransformColumns( Sale…

ใช้ Table.TransformColumns กับ Date.FromText เพื่อแปลงทั้งคอลัมน์วันที่พร้อมกัน แต่ละแถวจะแปลงผ่าน each _ โดยใช้ Culture="it-IT" ให้รู้ว่าเดือน "gen" = มกราคม และ "lug" = กรกฎาคม

fx
let
Sales = #table(
type table [Date = text, Amount = number],
{{"20 gen. 2023", 1500}, {"18 lug. 2024", 2000}}
),
ConvertedDates = Table.TransformColumns(
Sales,
{"Date", each Date.FromText(_, [Culture="it-IT"]), type date}
)
in
ConvertedDates

ผลลัพธ์ตารางที่วันที่เป็น date type แล้ว:
| Date | Amount |
|————|——–|
| 20 Jan 23 | 1500 |
| 18 Jul 24 | 2000 |

FAQs

ฉันจะรู้ได้ไหนว่า Format string ต้องเป็นอะไร?+

ดูจากข้อมูลจริง เช่น "31-12-2010" แล้วเขียน Format="dd-MM-yyyy" ให้ตรงกัน ห้ามจำ! เปิด docs .NET Custom Date and Time Format Strings ดูเพิ่มเติม

Date.FromText กับ Date.From ต่างกันอย่างไร?+

Date.FromText ใช้กับข้อความเท่านั้น รองรับ Format และ Culture ส่วน Date.From เป็น generic function ที่ลองแปลงจากประเภทใดๆ ที่ Power Query รู้จัก

แล้วถ้าข้อความมีรูปแบบ timezone หรือเวลาด้วยล่ะ?+

ใช้ DateTime.FromText แทน Date.FromText ถ้าข้อความมีส่วนเวลา เช่น "2010-12-31T14:30:00" Date.FromText ใช้ได้กับข้อความวันที่เท่านั้น

Culture=null ใช้ได้ไหม?+

ได้ แต่จะใช้ Culture.Current ของ Power Query เสี่ยงที่ฟังก์ชันจะแปลงผิดถ้า PC ของผู้ใช้ตั้ง culture ต่างกัน แนะนำระบุอย่างชัดเจน เช่น Culture="en-US"

Resources & Related

ฟังก์ชันที่ผู้เขียนโยงไว้กับ Date.FromText จัดกลุ่มตามหมวด · ชี้ที่ชื่อใดชื่อหนึ่ง แล้วฟังก์ชันที่ใช้คู่กันจะมีจุดทอง

ฟังก์ชันนี้Date.FromTextDate functions
Date functions (3)
Date.AddYears

Date.AddYears เพิ่มจำนวนปีที่ระบุให้กับค่า date datetime หรือ datetimezone คืนค่าเดียวกันกับประเภทข้อมูลอินพุต เก็บรักษาส่วนของเวลาไว้เหมือนเดิม ฟังก์ชันนี้จำเป็นสำหรับการคำนวณวันครบรอบปี การวางแผนระยะยาว และการวิเคราะห์ข้อมูลตามชั้นปี

Date.From

Date.From แปลงข้อมูลหลายรูปแบบ (ข้อความ ตัวเลข DateTime DateTimeZone) เป็นค่า date ที่สามารถใช้ในการคำนวณและจัดรูปแบบได้ รองรับการระบุ culture สำหรับการแปลงวันที่ localized

Date.ToText

Date.ToText แปลงค่า Date ให้เป็น Text String โดยสามารถกำหนด Format และ Culture ได้ตามต้องการ เหมาะสำหรับแสดงผลวันที่ในรูปแบบที่สวยงาม

DateTime functions (2)
DateTime.From

DateTime.From แปลงค่าต่างๆ (Text, Date, Time, Number) ให้เป็นข้อมูลชนิด DateTime ด้วยการระบุค่าและรหัสภาษาทำให้สะดวกในการจัดการข้อมูลวันเวลาจากแหล่งต่างๆ

DateTime.FromText

DateTime.FromText ใช้แปลงข้อความเป็นค่า datetime พร้อมรองรับรูปแบบและภาษาที่หลากหลาย

Comments

อีเมลของคุณจะไม่ถูกเผยแพร่