ตัวอย่างที่ 1: สร้าง Comparer สำหรับภาษาไทย
=Comparer.FromCulture("th-TH")
Function
สร้าง Comparer ตามวัฒนธรรม/ภาษาที่ระบุ
Comparer.FromCulture สร้าง Comparer ที่พิจารณากฎการเปรียบเทียบตามวัฒนธรรมที่ระบุ เช่นการจัดลำดับตัวอักษร การใช้เครื่องหมายวรรคตอน และการจัดการทศนิยม สำหรับการเปรียบเทียบข้อมูลในลักษณะเฉพาะของแต่ละภาษา
=Comparer.FromCulture(culture as text, optional ignoredAccents as logical, optional ignoreCase as logical) as function
=Comparer.FromCulture(culture as text, optional ignoredAccents as logical, optional ignoreCase as logical) as function
| Argument | Type | Required | Default | Description |
|---|---|---|---|---|
| culture | text | Yes | รหัสวัฒนธรรมเป็นข้อความ เช่น “en-US”, “th-TH”, “fr-FR” | |
| ignoredAccents | logical | Optional | false | หากเป็น true จะไม่สนใจเครื่องหมายกำกับเสียง (accents) เช่น é และ e ถูกมองว่าเท่ากัน |
| ignoreCase | logical | Optional | false | หากเป็น true จะไม่สนใจความแตกต่างของตัวพิมพ์เล็กและใหญ่ |
สร้าง Comparer สำหรับภาษาไทย (th-TH) หรือภาษาฝรั่งเศส (fr-FR) เพื่อให้การเปรียบเทียบถูกต้องตามกฎของภาษานั้น
ใช้ Comparer.FromCulture กับ List.Sort หรือ Table.Sort เพื่อจัดเรียงข้อมูลตามลำดับตัวอักษรของภาษาที่ระบุ
ใช้กับ List.Distinct หรือ Table.Distinct เพื่อลบค่าซ้ำโดยพิจารณากฎวัฒนธรรมต่างๆ
=Comparer.FromCulture("th-TH")
Function
=Comparer.FromCulture("fr-FR", true)
Function
=List.Sort({"Zebra", "Apple", "Banana"}, Comparer.FromCulture("en-US"))
{"Apple", "Banana", "Zebra"}
Comparer.Ordinal ใช้ลำดับแบบไบนารี (เปรียบเทียบค่าตัวเลขของตัวอักษร) ส่วน Comparer.FromCulture ใช้กฎของวัฒนธรรมที่ระบุ ซึ่งอาจแตกต่างกันไปในแต่ละภาษา
รหัสวัฒนธรรมมีรูปแบบเป็น “LanguageCode-CountryCode” เช่น “en-US” (อังกฤษ-สหรัฐอเมริกา), “th-TH” (ไทย-ไทย), “ja-JP” (ญี่ปุ่น-ญี่ปุ่น)
ได้ โดยตั้งค่า ignoredAccents เป็น true เช่น Comparer.FromCulture(“fr-FR”, true) จะทำให้ “é” และ “e” ถูกมองว่าเป็นตัวเดียวกันในการเปรียบเทียบ
ฟังก์ชัน Comparer.FromCulture ใน Power Query ใช้สำหรับสร้างตัวเปรียบเทียบ (Comparer) โดยอิงตามวัฒนธรรมหรือภาษา (Locale) ที่ระบุ เช่น “en-US” สำหรับภาษาอังกฤษ (สหรัฐอเมริกา) หรือ “th-TH” สำหรับภาษาไทย