Thep Excel

DateTimeZone.LocalNowเวลาปัจจุบันตามเขตเวลาท้องถิ่น

DateTimeZone.LocalNow ส่งกลับวันและเวลาปัจจุบันของระบบพร้อมข้อมูลเขตเวลาท้องถิ่น ใช้สำหรับสร้าง Timestamp ที่รับรู้เขตเวลา

fx
=DateTimeZone.LocalNow()

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

อัปเดต 3 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด คำอธิบาย
[none]ไม่บังคับ none ฟังก์ชันนี้ไม่ต้องการพารามิเตอร์

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

Additional Notes

DateTimeZone.LocalNow เป็นฟังก์ชันใน Power Query M ที่ไม่มีพารามิเตอร์ ส่งกลับค่าประเภท datetimezone พร้อมวันเวลาปัจจุบันและข้อมูลเขตเวลาของเครื่องท้องถิ่น ฟังก์ชันนี้ไม่ต้องการอะไรเลย แค่เรียกใช้ก็ได้

ที่เจ๋งคือ มันอ่านเขตเวลาจากระบบโดยอัตโนมัติ ซึ่งต่างจาก UTC ที่เป็นค่าฟิกส์ และต่างจาก DateTime ธรรมดาที่ไม่มีข้อมูลเขตเวลา ผม ชอบใช้มันในการสร้าง Audit Log หรือ Timestamp เวลา Extract ข้อมูลเพราะมันบอกว่าเวลาไหน ตามเขตเวลาจริง 😎

ส่วนตัวผม แนะนำให้ใช้ DateTimeZone.LocalNow เมื่อคุณต้องการให้การแปลงข้อมูลมี Timestamp ที่ตรงกับเขตเวลาของผู้ใช้จริง ไม่ว่าจะอยู่ประเทศไหน มันจะคืนค่ามาตามเขตเวลาของเครื่องนั้นเสมอ

Examples

ใช้งานพื้นฐาน – เวลาท้องถิ่นของเครื่องDateTimeZone.LocalNow()

ส่งกลับเวลาปัจจุบันตามเครื่อง (หากอยู่ประเทศไทย Zone ก็คือ +07:00) ไม่ต้องส่งพารามิเตอร์อะไรทั้งสิ้น

fx
=DateTimeZone.LocalNow()

ผลลัพธ์2025-12-26T14:35:00+07:00
สร้างคอลัมน์ Audit Log เมื่อ Transform ข้อมูลlet Source = Table.FromRows({{"ID", "Name"}, {1, "John"}, {2, "Jane"}}, {"ID", "Name"}), AddTimestamp = Table.AddColumn(Source, "ExtractedAt", each DateTimeZone…

Table.AddColumn ใช้ each และ DateTimeZone.LocalNow() เพื่อเพิ่มคอลัมน์ Timestamp ลงในทุกแถว สะดวกมากสำหรับ Audit Trail

fx
let
Source = Table.FromRows({{"ID", "Name"}, {1, "John"}, {2, "Jane"}}, {"ID", "Name"}),
AddTimestamp = Table.AddColumn(Source, "ExtractedAt", each DateTimeZone.LocalNow())
in
AddTimestamp

ผลลัพธ์ตารางที่มีคอลัมน์ ID, Name, และ ExtractedAt ที่เก็บเวลาปัจจุบันตามเขตเวลาท้องถิ่น
เปรียบเทียบกับ DateTime.LocalNow และ DateTimeZone.UtcNowlet Local = DateTimeZone.LocalNow(), LocalDT = DateTime.LocalNow(), UTC = DateTimeZone.UtcNow() in {Local, LocalDT, UTC}

DateTimeZone.LocalNow() มีข้อมูลเขตเวลา DateTime.LocalNow() ไม่มี DateTimeZone.UtcNow() ใช้เวลา UTC แทน ผมแนะนำให้เลือกตามความต้องการ – ถ้าต้องเก็บเขตเวลา ก็ใช้ DateTimeZone

fx
let
Local = DateTimeZone.LocalNow(),
LocalDT = DateTime.LocalNow(),
UTC = DateTimeZone.UtcNow()
in
{Local, LocalDT, UTC}

ผลลัพธ์{2025-12-26T14:35:00+07:00, 2025-12-26T14:35:00, 2025-12-26T07:35:00+00:00}
ใช้ในการกรองข้อมูลล่าสุดlet Source = Table.FromRows({{"ID", "Date"}, {1, #date(2025, 12, 25)}, {2, #date(2025, 12, 26)}}, {"ID", "Date"}), CurrentDateTime = DateTimeZone.LocalNow(), Cu…

ใช้ Date.From() เพื่อแยกเฉพาะส่วนวันที่จาก DateTimeZone.LocalNow() แล้วนำไปกรองข้อมูล ชีวิตจริงน่ะ เอาแบบนี้

fx
let
Source = Table.FromRows({{"ID", "Date"}, {1, #date(2025, 12, 25)}, {2, #date(2025, 12, 26)}}, {"ID", "Date"}),
CurrentDateTime = DateTimeZone.LocalNow(),
CurrentDate = Date.From(CurrentDateTime),
Filtered = Table.SelectRows(Source, each [Date] = CurrentDate)
in
Filtered

ผลลัพธ์ตารางที่แสดงเฉพาะแถวที่มีวันที่เท่ากับวันปัจจุบัน

FAQs

DateTimeZone.LocalNow() ต่างจาก DateTime.LocalNow() อะไร?+

DateTimeZone.LocalNow() ส่งกลับค่าประเภท datetimezone พร้อมข้อมูลเขตเวลา ส่วน DateTime.LocalNow() ส่งกลับเฉพาะ datetime โดยไม่มีข้อมูล Offset เขตเวลา ผมแนะนำใช้ DateTimeZone เมื่อต้องการเก็บข้อมูลเขตเวลา เพราะมันสมบูรณ์กว่า

ถ้าเปลี่ยนเขตเวลาของเครื่อง ค่าที่ส่งกลับจาก DateTimeZone.LocalNow() จะเปลี่ยนไหม?+

ใช่เลย DateTimeZone.LocalNow() อ่านเขตเวลาจากระบบปฏิบัติการโดยตรง หากเปลี่ยนเขตเวลาของเครื่อง ค่าที่ส่งกลับจะสะท้อนเขตเวลาใหม่นั้นทันที ผมเคยทดสอบแล้ว

ถ้าต้องการเวลา UTC ควรใช้อะไร?+

ใช้ DateTimeZone.UtcNow() แทน มันจะส่งกลับเวลา UTC ที่มี +00:00 เป็น Offset เสมอ ผมชอบใช้ UTC เมื่อต้องเก็บเวลาในฐานข้อมูล เพราะ UTC เป็นมาตรฐานระหว่างประเทศ

Resources & Related

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

ฟังก์ชันนี้DateTimeZone.LocalNowDateTimeZone functions
DateTimeZone functions (2)
DateTimeZone.ToLocal

แปลงค่า DateTimeZone ไปเป็น Local Time ของเครื่องที่รัน Query

DateTimeZone.UtcNow

คืนค่าวันและเวลาปัจจุบันในหน่วย UTC (Coordinated Universal Time)

Date functions (1)
Date.From

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

DateTime functions (1)
DateTime.LocalNow

DateTime.LocalNow คืนค่า DateTime (วันที่ + เวลา) ปัจจุบันตามระบบ เทียบเท่า NOW() ใน Excel แต่ทำงานบน Power Query

Comments

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