Thep Excel

Comparer.FromCultureสร้าง Comparer จากวัฒนธรรม

Comparer.FromCulture สร้าง Comparer ที่พิจารณากฎการเปรียบเทียบตามวัฒนธรรมที่ระบุ เช่นการจัดลำดับตัวอักษร การใช้เครื่องหมายวรรคตอน และการจัดการทศนิยม สำหรับการเปรียบเทียบข้อมูลในลักษณะเฉพาะของแต่ละภาษา

fx
=Comparer.FromCulture(culture, [ignoredAccents], [ignoreCase]) as function

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

อัปเดต 4 December 2025

Syntax & Arguments

อาร์กิวเมนต์ ชนิด ค่าเริ่มต้น คำอธิบาย
culture text รหัสวัฒนธรรมเป็นข้อความ เช่น “en-US”, “th-TH”, “fr-FR”
[ignoredAccents]ไม่บังคับ logical false หากเป็น true จะไม่สนใจเครื่องหมายกำกับเสียง (accents) เช่น é และ e ถูกมองว่าเท่ากัน
[ignoreCase]ไม่บังคับ logical false หากเป็น true จะไม่สนใจความแตกต่างของตัวพิมพ์เล็กและใหญ่

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

ฟังก์ชัน Comparer.FromCulture ใน Power Query ใช้สำหรับสร้างตัวเปรียบเทียบ (Comparer) โดยอิงตามวัฒนธรรมหรือภาษา (Locale) ที่ระบุ เช่น “en-US” สำหรับภาษาอังกฤษ (สหรัฐอเมริกา) หรือ “th-TH” สำหรับภาษาไทย

How it works

เปรียบเทียบข้อมูลในภาษาต่างๆ

สร้าง Comparer สำหรับภาษาไทย (th-TH) หรือภาษาฝรั่งเศส (fr-FR) เพื่อให้การเปรียบเทียบถูกต้องตามกฎของภาษานั้น

จัดเรียงข้อมูลตามลำดับตัวอักษรของวัฒนธรรมที่ต่างกัน

ใช้ Comparer.FromCulture กับ List.Sort หรือ Table.Sort เพื่อจัดเรียงข้อมูลตามลำดับตัวอักษรของภาษาที่ระบุ

ลบค่าซ้ำตามกฎวัฒนธรรม

ใช้กับ List.Distinct หรือ Table.Distinct เพื่อลบค่าซ้ำโดยพิจารณากฎวัฒนธรรมต่างๆ

Examples

ตัวอย่างที่ 1: สร้าง Comparer สำหรับภาษาไทยComparer.FromCulture("th-TH")

สร้าง Comparer ตามกฎวัฒนธรรมภาษาไทย สามารถใช้กับฟังก์ชันเปรียบเทียบอื่นๆ

fx
=Comparer.FromCulture("th-TH")

ผลลัพธ์Function
ตัวอย่างที่ 2: สร้าง Comparer สำหรับภาษาฝรั่งเศสไม่สนใจเครื่องหมายกำกับเสียงComparer.FromCulture("fr-FR", true)

สร้าง Comparer ภาษาฝรั่งเศส โดยไม่สนใจเครื่องหมายกำกับเสียง เช่น é = e

fx
=Comparer.FromCulture("fr-FR", true)

ผลลัพธ์Function
ตัวอย่างที่ 3: จัดเรียงข้อมูลตามวัฒนธรรมList.Sort({"Zebra", "Apple", "Banana"}, Comparer.FromCulture("en-US"))

จัดเรียงรายชื่อตามลำดับตัวอักษรของภาษาอังกฤษ (สหรัฐฯ)

fx
=List.Sort({"Zebra", "Apple", "Banana"}, Comparer.FromCulture("en-US"))

ผลลัพธ์{"Apple", "Banana", "Zebra"}

FAQs

Comparer.FromCulture ต่างจาก Comparer.Ordinal อย่างไร?+

Comparer.Ordinal ใช้ลำดับแบบไบนารี (เปรียบเทียบค่าตัวเลขของตัวอักษร) ส่วน Comparer.FromCulture ใช้กฎของวัฒนธรรมที่ระบุ ซึ่งอาจแตกต่างกันไปในแต่ละภาษา

รหัสวัฒนธรรม (Culture Code) มีรูปแบบอย่างไร?+

รหัสวัฒนธรรมมีรูปแบบเป็น "LanguageCode-CountryCode" เช่น "en-US" (อังกฤษ-สหรัฐอเมริกา), "th-TH" (ไทย-ไทย), "ja-JP" (ญี่ปุ่น-ญี่ปุ่น)

สามารถไม่สนใจเครื่องหมายกำกับเสียงเมื่อจัดเรียงได้หรือไม่?+

ได้ โดยตั้งค่า ignoredAccents เป็น true เช่น Comparer.FromCulture("fr-FR", true) จะทำให้ "é" และ "e" ถูกมองว่าเป็นตัวเดียวกันในการเปรียบเทียบ

Resources & Related

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

ฟังก์ชันนี้Comparer.FromCultureComparer functions
Comparer functions (3)
Comparer.Equals

Comparer.Equals ตรวจสอบว่าค่าสองค่านั้นเท่ากันหรือไม่ โดยพิจารณาจากประเภท Comparer ที่ใช้ ใช้เป็น Argument ในฟังก์ชันต่างๆ ที่มีการเปรียบเทียบหรือค้นหา

Comparer.Ordinal

Comparer.Ordinal สร้างตัวเปรียบเทียบที่สนใจตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ ดังนั้น "A" ไม่เท่ากับ "a" ใช้เป็น Argument ในฟังก์ชันต่างๆ ที่มีการเปรียบเทียบหรือค้นหา

Comparer.OrdinalIgnoreCase

Comparer.OrdinalIgnoreCase เป็นฟังก์ชันที่คืนค่าเป็น 'Function' ซึ่งใช้ในการเปรียบเทียบค่า 2 ค่า โดยจะถือว่า "A" และ "a" เท่ากัน (return 0) ใช้เป็น Argument สุดท้ายในหลายๆ ฟังก์ชัน เช่น List.Contains, Text.Contains, Table.Distinct

Comments

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