จัดสไตล์เอกสาร Excel และเพิ่มไฮเปอร์ลิงก์พร้อมตารางนําทาง

บทความนี้อธิบายวิธีการจัดรูปแบบเซลล์และเพิ่มไฮเปอร์ลิงก์ไปยังเอกสาร Excel ที่คุณสร้างด้วยตารางนําทาง Power Query ก่อนเริ่ม ให้ตรวจสอบการสร้างเอกสาร Excel พร้อมตารางนําทางสําหรับสคีมาของตารางนําทาง ประเภทชิ้นส่วน และพฤติกรรมการจัดตําแหน่ง

ใช้สไตล์

เพิ่ม Styles รายการลงในระเบียนของ Properties ชิ้นส่วน แต่ละรายการจะมี Target, ซึ่งระบุเซลล์เวิร์กชีต และ Style, ซึ่งระบุรูปแบบของเซลล์เหล่านั้น คุณสามารถใช้สไตล์กับ SheetData, Table, Range, และTextชิ้นส่วน รวมถึงตารางข้อมูลสํารองของชิ้นส่วนได้Chart

ใช้รูปร่างนี้สําหรับทุกรายการในรายการ:

[Target = [Column = "Revenue"], Style = [NumberFormat = "$#,##0.00"]]

ชื่อฟิลด์บันทึก M รายการจะแยกตัวพิมพ์ใหญ่-เล็ก ดังนั้นเขียนว่า Target, Style, Font, Color, และฟิลด์อื่น ๆ ตามที่แสดงไว้อย่างถูกต้อง คุณสามารถใช้ค่าตัวเลือกที่มีเอกสารประกอบ เช่น Center, Double, และ Solid โดยไม่คํานึงถึงตัวพิมพ์เล็ก แต่ใช้ตัวอักษรตัวพิมพ์ที่มีเอกสารประกอบ ชื่อคอลัมน์ Source Power Query schema ในเป้าหมายระเบียนและการแมปไฮเปอร์ลิงก์จะแยกตัวพิมพ์ใหญ่-เล็ก

ตัวอย่างต่อไปนี้จัดรูปแบบส่วนหัว คอลัมน์ตัวเลขสองคอลัมน์ ความกว้างของคอลัมน์ และความสูงของแถวส่วนหัว

let
    Sales = #table(
        type table [Product = text, Revenue = number, Margin = number],
        {
            {"Northwind", 1200.5, 0.24},
            {"Contoso", 2750, 0.31}
        }
    ),
    ExcelDocument = #table(
        type table [Sheet = nullable text, Name = nullable text, PartType = nullable text, Properties = nullable record, Data = any],
        {
            {
                "Sales", "SalesData", "SheetData",
                [
                    Styles =
                    {
                        [Target = "A1:C1", Style = [Font = [Name = "Aptos", Size = 12, Family = 2, Bold = true, Color = "White"], Fill = "#305496", Alignment = [Horizontal = "Center"]]],
                        [Target = [Column = "Revenue"], Style = [NumberFormat = "$#,##0.00"]],
                        [Target = [Column = "Margin"], Style = [NumberFormat = "0.0%"]],
                        [Target = "A:A", Style = [Width = 24]],
                        [Target = "B:C", Style = [Width = 14]],
                        [Target = "1:1", Style = [RowHeight = 24]]
                    }
                ],
                Sales
            }
        }
    )
in
    ExcelDocument

เลือกเป้าหมายสไตล์

เป้าหมายใช้พิกัดแบบสัมบูรณ์ของแผ่นงาน ที่อยู่ของพวกมันจะไม่เคลื่อนที่เมื่อชิ้นส่วนเริ่มต้นที่อื่นนอกจากเซลล์ A1

เป้าหมาย เลือก ระบบพิกัด ตัวอย่าง
ข้อความสไตล์ A1 เซลล์หรือช่วงที่มีขอบเขต แบบ 1 "A1:C5"
ข้อความทั้งคอลัมน์ หนึ่งหรือมากกว่าคอลัมน์ แบบ 1 "B:B" หรือ "B:D"
ข้อความทั้งแถว หนึ่งแถวหรือมากกว่า แบบ 1 "3:3" หรือ "2:10"
ระเบียนคอลัมน์ คอลัมน์ของชิ้นส่วน ระบุด้วยชื่อคอลัมน์ในสคีมาตาราง Power Query ต้นทาง อิงตามชื่อ [Column = "Revenue"]
บันทึกแถว แถวแผ่นงาน แบบ 1 [Row = 3]
บันทึกคอลัมน์และแถว เซลล์หนึ่งเซลล์ที่คอลัมน์และแถวเวิร์กชีตที่ตั้งชื่อไว้ แถวที่ใช้ฐาน 1 [Column = "Revenue", Row = 3]
บันทึกสี่เหลี่ยมผืนผ้า ช่วงที่มีขอบเขตจํากัด ฐาน 0 [Top = 1, Left = 0, Bottom = 3, Right = 2] เลือก A2:C4

Important

[Column = "A"] เลือกเซลล์ข้อมูลสําหรับคอลัมน์ในตารางต้นทางที่มีชื่อว่า A; ไม่ได้หมายถึงคอลัมน์เวิร์กชีต A ใช้เพื่อ "A:A" เลือกคอลัมน์เวิร์กชีต A รวมถึงเซลล์หัวเรื่อง การจับคู่ชื่อคอลัมน์จะแยกตัวพิมพ์ใหญ่-เล็ก

Rowค่าในเป้าหมายระเบียนเป็นแถวแบบเวิร์กชีตแบบสัมบูรณ์ 1 ฟิลด์สี่เหลี่ยมผืนผ้าเป็นข้อยกเว้น: Top, Left, Bottom, และ Right เป็นศูนย์และครอบคลุม

จัดสไตล์เซลล์ที่อยู่นอกข้อมูลของชิ้นส่วน

เป้าหมายสามารถรวมเซลล์ว่างที่อยู่นอกข้อมูลของชิ้นส่วน เช่น เพื่อเพิ่มพื้นที่เติมหรือขอบรอบพื้นที่รายงาน ใช้ Table ตําแหน่งหรือ Range ส่วนที่ชัดเจนเมื่อคุณต้องการพฤติกรรมนี้ SheetData เป้าหมายจํากัดอยู่ในพื้นที่ข้อมูลของมัน ด้วยชิ้นส่วนที่จัดตําแหน่งอัตโนมัติ จะมีเพียงการตกแต่งใต้ข้อมูลแผ่นทั้งหมดเท่านั้นที่ปล่อยออกมาได้อย่างน่าเชื่อถือ

แต่ละเซลล์ที่สร้างขึ้นเพื่อการจัดแต่งทรงเท่านั้นจะถูกนับรวมในขีดจํากัดการทําให้เป็นวัตถุของสไตล์ โปรดใช้เป้าหมายทั้งคอลัมน์และทั้งแถวสําหรับพื้นที่ขนาดใหญ่

อ้างอิงสไตล์

องค์ประกอบสไตล์ทุกชิ้นเป็นทางเลือก A Style เป็นแพตช์บางส่วน ไม่ใช่การแทนที่การจัดรูปแบบเซลล์ทั้งหมด ระบุเฉพาะฟิลด์ที่คุณต้องการเปลี่ยนแปลงเท่านั้น ส่วนประกอบที่ถูกละเว้นจะไม่เปลี่ยนแปลง Nested records ก็เป็นแบบบางส่วนเช่นกัน ตัวอย่างเช่น [Font = [Bold = true]] เปลี่ยนความหนาโดยไม่ต้องตั้งค่าหรือรีเซ็ตชื่อ ขนาด หรือสีของฟอนต์

ส่วนประกอบ จุดประสงค์ ตัวอย่าง
Font ฟอนต์ ขนาด การเน้น เอฟเฟกต์ และสี [Font = [Bold = true, Size = 12, Color = "Red"]]
Fill พื้นหลังหรือรูปแบบเซลล์ [Fill = "#FFF2CC"]
Border ขอบเซลล์และแนวทแยง [Border = [Outline = true]]
Alignment การจัดแนว การห่อ การหมุน และการเยื้อง [Alignment = [Horizontal = "Center", WrapText = true]]
Protection การตั้งค่าที่ถูกล็อกและซ่อนไว้ซึ่งใช้โดยเวิร์กชีตที่ได้รับการป้องกัน [Protection = [Locked = false]]
NumberFormat โค้ดรูปแบบตัวเลข Excel [NumberFormat = "0.00%"]
Width ความกว้างคอลัมน์ในหน่วยความกว้างตัวอักษร [Width = 24]
RowHeight ความสูงของแถวเป็นจุด [RowHeight = 30]

แบบอักษร

ตัวอย่างต่อไปนี้ขอ Aptos ที่ 12 จุดและจัดประเภทเป็นครอบครัวฟอนต์ sans serif:

[Font = [Name = "Aptos", Size = 12, Family = 2, Bold = true, Color = "#1F4E79"]]
ฟิลด์ Type ค่า
Name SMS ชื่อฟอนต์ เช่น Aptos, Arial, , CalibriGeorgia, หรือConsolas
Size ตัวเลข ขนาดจุด เช่น 10, 11, 14, หรือ 18
Bold, Italic, Strikethrough มีเหตุผล true หรือ false
Underline SMS None, Single, Double, SingleAccounting, หรือ DoubleAccounting
Color สี ค่าที่อธิบายไว้ใน Specify colors
VerticalAlign SMS Baseline, Superscript หรือ Subscript
Scheme SMS None, Major หรือ Minor
Family ตัวเลข การจัดประเภทครอบครัว Open XML เป็นตัวเลือก: 1 สําหรับโรมันหรือเซอริฟ, 2 สําหรับสวิสหรือไม่มีเซอริฟ, 3 สําหรับโมเดิร์นหรือโมโนสเปซ, 4 สําหรับสคริปต์ หรือ 5 สําหรับแบบตกแต่ง

Name ถูกเก็บไว้ในสมุดงาน;ไม่ได้ติดตั้งหรือฝังฟอนต์ เลือกแบบอักษรที่เปิดสมุดงานให้ใช้งาน Excel สามารถแทนที่ฟอนต์อื่นได้เมื่อไม่ได้ติดตั้งฟอนต์ที่ร้องขอ Familyช่วยให้ Excel เลือกฟอนต์แทนได้ และโดยปกติจะถูกละเว้นแต่คุณจะต้องจัดประเภทฟอนต์ที่ร้องขอ ตัวอย่างเช่น ใช้ Family = 1 กับ Georgia, Family = 2 กับ Arial, หรือ Family = 3 กับ Consolas.

เติม

สําหรับการเติมสีทึบ ให้ใช้สีเป็นสไตล์ทั้งหมด เป็น Fill ค่า หรือเป็น Fill[Color]:

[Target = "A1:C1", Style = "#FFF2CC"]
[Target = "A1:C1", Style = [Fill = "#FFF2CC"]]
[Target = "A1:C1", Style = [Fill = [Color = "#FFF2CC"]]]

ระเบียนเติมข้อมูลสามารถประกอบด้วย PatternType, ForegroundColor, และ BackgroundColor. PatternTypeรองรับชื่อแพทเทิร์น Excel รวมถึง None, Solid, Gray125Gray0625, DarkGray, MediumGrayLightGray, , และรูปแบบแนวนอน แนวตั้ง แนวทแยง กริด และเล็งสีเข้มหรือสว่าง

สําหรับสีทึ ForegroundColor บ คือสีที่มองเห็นได้ BackgroundColor ใช้เฉพาะกับการเติมลวดลายเท่านั้น

Border

ตั้งค่า Outline = true ให้ใช้สไตล์เดียวกับขอบนอกทั้งสี่ของแต่ละเซลล์เป้าหมาย เส้นขอบเริ่มต้นจะบางและดํา

[Target = "B2:D5", Style = [Border = [Outline = true, Style = "Medium", Color = "Red"]]]

สําหรับขอบที่แตกต่างกัน ให้ใช้ Left, Right, , Top, Bottomหรือ Diagonal. ขอบอาจเป็นชื่อสไตล์หรือเรคคอร์ดที่มีและStyleColor ตั้งค่า DiagonalUp หรือ DiagonalDown เลือกทิศทางทแยงมุม

รูปแบบขอบคือ , , , , , , Dotted, , Double, DashDotMediumDashDotDashDotDotHairMediumDashed, และSlantDashDotMediumDashDotDotDashedThickMediumThinNone

Important

ระดับขอบ Style และ Color ใช้เฉพาะเมื่อ Outline = true. มิฉะนั้น ให้กําหนดขอบแต่ละเส้น

การจัดแนว

ฟิลด์ ค่า
Horizontal General, , , , , , Justify, , CenterContinuousหรือ FillRightCenterLeftDistributed
Vertical Top, Center, Bottom, Justify, หรือ Distributed
TextRotation 0 ผ่าน 180, หรือ 255 สําหรับข้อความซ้อน
WrapText, ShrinkToFit true หรือ false
Indent 0 ผ่าน 255
ReadingOrder ContextDependent, LeftToRight หรือ RightToLeft

การป้องกัน

Protection รองรับฟิลด์ Locked ตรรกะและ Hidden. การตั้งค่าเหล่านี้จะมีผลก็ต่อเมื่อแผ่นงานได้รับการป้องกันใน Excel แล้ว ค่าเริ่มต้นของรูปแบบเซลล์ Excel ถูกLockedตั้งค่าเป็น true, ดังนั้นเซลล์ที่คุณไม่ได้ระบุการป้องกันจะถูกล็อกเมื่อเปิดใช้งานการป้องกันแผ่นงาน ใช้ ตั้งค่า Locked สําหรับ false เซลล์ที่ควรจะยังคงแก้ไขได้

[Target = "B2:B20", Style = [Protection = [Locked = false]]]

ตั้งค่า Hidden เป็น true เพื่อซ่อนสูตรของเซลล์ในขณะที่แผ่นงานได้รับการปกป้อง ปลายทาง Excel จะเขียนการตั้งค่าการป้องกันเซลล์แต่ไม่เปิดใช้งานการป้องกันแผ่นงาน; เปิดใช้งานการป้องกันใน Excel สําหรับLockedหรือHiddenมีผล

รูปแบบตัวเลข

NumberFormatรองรับรหัสรูปแบบตัวเลข Excel มันจะมาแทนที่รูปแบบอัตโนมัติที่อิงกับประเภทของปลายทางสําหรับเซลล์เป้าหมาย การตั้งค่าฟอนต์, การเติม, ขอบ และการจัดแนวยังคงถูกใช้งานต่อไป

คุณสมบัตินี้รองรับรูปแบบที่มีอยู่ใน Excel และรูปแบบที่กําหนดเองที่ปลอดภัย มันไม่ได้จํากัดแค่ตัวอย่างในตารางนี้เท่านั้น

แสดงผล รหัสรูปแบบ ตัวอย่างผลลัพธ์
ทั่วไป "General" Excel เลือกการแสดงผล
เลขจำนวนเต็ม "0" 1235
ตัวคั่นหลักพัน "#,##0" 1,235
ทศนิยมคงที่ "0.00" หรือ "#,##0.00" 1234.50 หรือ 1,234.50
เปอร์เซ็นต์ "0%" หรือ "0.00%" 25% หรือ 25.00%
Currency "$#,##0.00" $1,234.50
เชิงวิทยาศาสตร์ "0.00E+00" หรือ "##0.0E+0" 1.23E+03
เศษส่วน "# ?/?" หรือ "# ??/??" 1 1/4
วันที่ "mm-dd-yy", "d-mmm-yy" หรือ "yyyy-mm-dd" 09-21-26, 21-Sep-26 หรือ 2026-09-21
Time "h:mm AM/PM", "h:mm:ss" หรือ "[h]:mm:ss" 2:30 PM, 14:30:05, หรือชั่วโมงที่ผ่านไป
วันที่และเวลา "m/d/yyyy h:mm" 9/21/2026 14:30
ค่าติดลบ "#,##0.00;[Red](#,##0.00)" ค่าลบจะแสดงเป็นสีแดงและอยู่ในวงเล็บ
ข้อความ "@" รักษาการแสดงผลข้อความ
ตัวเลขที่มีข้อความตรงตัว "#,##0 ""USD""" 1,235 USD
[Target = [Column = "Margin"], Style = [NumberFormat = "0.0%"]]
[Target = [Column = "Revenue"], Style = [NumberFormat = "$#,##0.00"]]
[Target = [Column = "OrderDate"], Style = [NumberFormat = "yyyy-mm-dd"]]
[Target = [Column = "Code"], Style = [NumberFormat = "@"]]

รหัสรูปแบบที่กําหนดเองสามารถมีได้สูงสุด 255 ตัวอักษร รหัสรูปแบบ Excel ใช้เครื่องหมายคําพูดคู่รอบข้อความตรงตัว คูณเครื่องหมายคําพูดภายในค่าข้อความ M เช่นใน "#,##0 ""USD""". คุณยังสามารถหลบหนีตัวละครตัวหนึ่งได้ด้วยการทับทับถอยหลัง อักขระควบคุม วงเล็บเหลี่ยม เครื่องหมายคําพูดหรือวงเล็บที่ไม่สมดุล ข้อความที่ไม่ปลอดภัย และโทเค็นรูปแบบที่ไม่รองรับ จะถูกปฏิเสธด้วยข้อผิดพลาด30078ผ่าน30083

Important

M ไม่ได้ใช้ \" เพื่อหลบหนีเครื่องหมายคําพูดในข้อความ ใส่เครื่องหมายคําพูดเป็นสองเท่าแทน ตัวอย่างเช่น โค้ด #,##0 "USD" Excel ต้องเขียนเป็นค่า "#,##0 ""USD"""M

ความกว้างคอลัมน์และความสูงของแถว

Width รับค่าตั้งแต่ 0 ถึง 255 นําไปใช้กับเป้าหมายทั้งคอลัมน์ เป้าหมายคอลัมน์ที่ตั้งชื่อ หรือเซลล์หรือช่วงที่มีขอบเขต ช่วงที่มีขอบเขตจะกําหนดขนาดทุกคอลัมน์ที่ครอบคลุม

เพื่อขนาดที่มีประสิทธิภาพและคาดการณ์ได้:

  • ใช้เป้าหมายทั้งคอลัมน์ เช่น "A:A" เมื่อคุณทราบตําแหน่งของแผ่นงาน
  • ใช้ [Column = "Description"] เมื่อตําแหน่งอาจเปลี่ยนแปลงแต่สคีมาของตารางต้นทางยังคงเสถียร
  • จัดกลุ่มคอลัมน์ที่อยู่ติดกันที่ต้องการความกว้างเท่ากัน เช่น [Target = "B:D", Style = [Width = 14]].
  • หลีกเลี่ยงการกําหนดขนาดแค่คอลัมน์ในแบบเซลล์ต่อเซลล์ขนาดใหญ่ เป้าหมายทั้งคอลัมน์ไม่ได้ปรากฏในทุกเซลล์

เมื่อหลายส่วนมีส่วนร่วมกับความกว้างที่คํานวณโดยอัตโนมัติในคอลัมน์แผ่นงานเดียวกัน จะใช้ความกว้างอัตโนมัติที่ใหญ่ที่สุดเพื่อป้องกันไม่ให้เนื้อหาของส่วนหนึ่งแคบลงในคอลัมน์ของอีกส่วนหนึ่ง ความกว้างแบบชัดเจนจะมีความสําคัญแทน: ภายในส่วนหนึ่ง กฎที่เฉพาะเจาะจงเท่ากันในภายหลังจะชนะ;กฎคอลัมน์เฉพาะจะชนะความกว้างของแผ่นงาน;และเมื่อส่วนที่ทับซ้อนกันกําหนดขนาดคอลัมน์แผ่นงานเดียวกันอย่างชัดเจน ส่วนบนสุดจะชนะ กําหนดความกว้างเฉพาะหนึ่งช่องต่อคอลัมน์ของเวิร์กชีตเมื่อเป็นไปได้

Important

A Width บนเป้าหมายทั้งแถวหรือทั้งแผ่นไม่ถูกต้องและคืนค่าข้อผิดพลาด30111 เลือกเลือกคอลัมน์หนึ่งหรือมากกว่านั้นแทน

RowHeight รับค่าตั้งแต่ 0 ถึง 409 คะแนน มันทํางานได้เฉพาะกับเป้าหมายข้อความทั้งแถว เช่น "2:2" หรือ"2:10" รูปแบบเป้าหมายอื่น ๆ จะส่งค่า error 30090.

ใช้ช่วงทั้งแถวหนึ่งสําหรับแถวที่อยู่ติดกันที่มีความสูงเท่ากัน เช่น [Target = "2:20", Style = [RowHeight = 18]]. วิธีนี้มีประสิทธิภาพมากกว่ากฎแยกสําหรับแต่ละแถว เมื่อช่วงความสูงแถวทับซ้อนกัน กฎในภายหลังจะมีลําดับความสําคัญในการทับซ้อน ดังนั้นควรวางค่าเริ่มต้นกว้างก่อนและข้อยกเว้นทีหลัง

ระบุสี

สีแบบตัวอักษร สีเติม และสีขอบรองรับรูปแบบเหล่านี้:

แบบฟอร์ม ตัวอย่าง หมายเหตุ
ข้อความหกเหลี่ยม "#FF0000", "80FF0000" RGB 6 หลัก หรือ ARGB 8 หลัก; # เป็นอุปกรณ์เสริม
สีที่ตั้งชื่อ "Red" Black, , , , , BlueYellow, Cyan, Magentaหรือ GreyPinkPurpleOrangeGray , และ GreenRedWhiteBrown
บันทึก RGB [RGB = "FFC7CE"] รหัส RGB หกหลัก หรือ ARGB แปดหลัก
บันทึกเพลงธีม [Theme = 4, Tint = -0.25] ดัชนีธีม 0 ถึง 11;ตัวเลือกสีเข้มตั้งแต่ -1 ถึง 1
สีอัตโนมัติ [Auto = true] สีอัตโนมัติที่ขึ้นกับธีมของ Excel

กฎสไตล์รวม

เมื่อมีกฎหลายตัวที่มีผลต่อเซลล์เดียวกัน ฟิลด์สไตล์ของแต่ละช่องจะรวมกันตามลําดับรายการ ค่าที่ใหม่กว่าจะแทนที่ค่าก่อนหน้าสําหรับฟิลด์เดียวกัน ในขณะที่ฟิลด์ที่ไม่เกี่ยวข้องจะยังคงอยู่ ตัวอย่างเช่น การเติมสีในภายหลังจะไม่ลบฟอนต์ตัวหนาก่อนหน้า จัดลําดับกฎจากทั่วไปไปเฉพาะ

การแบ่งขนาดจะเป็นไปตามลําดับความสําคัญที่อธิบายไว้ใน ความกว้างคอลัมน์และความสูงแถว แทนที่จะใช้การรวมฟิลด์แบบปกติ

รูปแบบทั่วไป

จัดรูปแบบส่วนหัวรายงาน

[Target = "A1:E1", Style = [Font = [Name = "Aptos", Size = 12, Bold = true, Color = "White"], Fill = "#305496", Alignment = [Horizontal = "Center"]]]

เพิ่มการเติมแถวสลับกัน

[Target = "A2:E2", Style = [Fill = "#F2F2F2"]],
[Target = "A4:E4", Style = [Fill = "#F2F2F2"]]

จัดรูปแบบคอลัมน์สกุลเงินและเปอร์เซ็นต์

[Target = [Column = "Revenue"], Style = [NumberFormat = "$#,##0.00"]],
[Target = [Column = "Margin"], Style = [NumberFormat = "0.0%"]]

เพิ่มขอบรอบบล็อก

[Target = "B2:D10", Style = [Border = [Outline = true, Style = "Medium"]]]

ขนาดกลุ่มคอลัมน์และแถว

[Target = "A:A", Style = [Width = 28]],
[Target = "B:E", Style = [Width = 14]],
[Target = "1:1", Style = [RowHeight = 26]],
[Target = "2:20", Style = [RowHeight = 18]]

ตกแต่งพื้นที่รายงานว่างเปล่า

[Target = "G3:I5", Style = [Border = [Outline = true], Fill = "#FFF2CC"]]

ใช้รูปแบบนี้เฉพาะกับชิ้นส่วนหรือชิ้นส่วนที่จัดตําแหน่งTableRangeไว้อย่างชัดเจนเท่านั้น สําหรับข้อมูลเพิ่มเติม ดูที่ เซลล์สไตล์นอกข้อมูลของชิ้นส่วน

ส่วนข้อความสไตล์และช่วงที่รวมกัน

ใช้ชิ้นส่วนสําหรับ Text ชื่อเรื่อง หมายเหตุ หรือค่าเดียวอื่น ๆ ช่วงที่มีขอบเขตจะ StartCell สร้างพื้นที่ที่ถูกรวม เป้าหมายสไตล์ยังคงใช้ที่อยู่แบบสัมบูรณ์ของแผ่นงาน

ตัวอย่างต่อไปนี้สร้างชื่อเรื่องที่รวมกันและปรับแต่งการเติม ฟอนต์ การจัดแนว ขอบ และความสูงของแถว

let
    ExcelDocument = #table(
        type table [Sheet = nullable text, Name = nullable text, PartType = nullable text, Properties = nullable record, Data = any],
        {
            {
                "Summary", "ReportTitle", "Text",
                [
                    StartCell = "B2:E3",
                    Styles =
                    {
                        [
                            Target = "B2:E3",
                            Style =
                            [
                                Font = [Bold = true, Size = 16, Color = "White"],
                                Fill = "#305496",
                                Alignment = [Horizontal = "Center", Vertical = "Center"],
                                Border = [Outline = true, Style = "Medium", Color = "#1F1F1F"]
                            ]
                        ],
                        [Target = "2:3", Style = [RowHeight = 24]]
                    }
                ],
                "Quarterly sales summary"
            }
        }
    )
in
    ExcelDocument

Excel เก็บค่าที่รวมและรูปแบบส่วนใหญ่ไว้ในเซลล์สมอบนซ้าย ขอบแตกต่างออกไป: เพื่อแสดงเส้นขอบรอบพื้นที่ที่รวมกัน สมุดงานต้องมีการจัดรูปแบบขอบบนเซลล์ขอบที่ครอบคลุมด้วย ปลายทาง Excel จะสร้างเซลล์รอบนอกเหล่านั้นเมื่อสไตล์มีส่วนเพิ่ม Left, Right, Top, หรือBottomขอบไปยังพื้นที่ที่รวมกัน

กฎที่มุ่งเป้าไปที่เซลล์ที่ถูกครอบคลุมสามารถเพิ่มรูปแบบของตัวเองได้ หลีกเลี่ยงการใช้ช่วงขอบเขตต่อเซลล์ขนาดใหญ่กับการรวมขนาดใหญ่: พื้นที่ขอบที่รวมกันหนึ่งพื้นที่สามารถแสดงได้สูงสุด 1,048,576 เซลล์ และแผ่นงานสามารถแสดงได้สูงสุด 4,194,304 เซลล์ที่มีสไตล์

คุณสามารถเพิ่มไฮเปอร์ลิงก์ไปยังทุกส่วนที่มีข้อมูล: SheetData, Table, Range, Text, และตารางข้อมูลสํารองของ Chart.

เป้าหมายต้องเป็น complete, absolute http หรือ https URL เช่น https://www.microsoft.com. URL สัมพัทธ์, การอ้างอิงเวิร์กชีต และสคีมอื่น ๆ เช่น file, ftp, และ mailto ไม่รองรับ ข้อจํากัดนี้รับประกันว่าลิงก์ที่ปล่อยออกมาทุกลิงก์เป็นความสัมพันธ์เว็บภายนอกที่มีเป้าหมายที่ได้รับการตรวจสอบแล้ว URL ที่ไม่ว่างและไม่รองรับจะทําให้การเขียนปลายทางล้มเหลว URL ที่เป็นศูนย์หรือเปล่าจะสร้างเซลล์ธรรมดาโดยไม่มีไฮเปอร์ลิงก์

เพิ่มไฮเปอร์ลิงก์ได้สองวิธี:

  • เพิ่มกฎในคุณสมบัติของ Hyperlinks ชิ้นส่วนเมื่อคอลัมน์ให้ URL
  • เพิ่ม Hyperlink เมตาดาต้าให้กับค่าต่าง ๆ เมื่อข้อความแสดงผล, URL หรือคําอธิบายเครื่องมือแตกต่างกันตามแถว

แต่ละกฎใน Properties[Hyperlinks] รองรับฟิลด์เหล่านี้:

ฟิลด์ ต้องมี คำอธิบาย
UrlColumn Yes ชื่อของ textข้อความที่เป็น nullable หรือ any คอลัมน์ที่มี URL
DisplayText No ข้อความคงที่จะแสดงสําหรับ URL ที่ไม่ว่างทุกตัว;URL จะแสดงเมื่อถูกละเว้น
Tooltip No คําอธิบายเครื่องมือคงที่สําหรับทุกลิงก์ที่สร้างโดยกฎ

กฎนี้จะไม่เพิ่ม ลบ หรือเปลี่ยนชื่อคอลัมน์ URL ที่เป็นศูนย์หรือว่างเปล่าจะยังคงเป็นเซลล์ธรรมดาและไม่ได้สร้างไฮเปอร์ลิงก์

ตัวอย่างต่อไปนี้จะแสดง Open สําหรับแต่ละ URL และแทนที่รูปลักษณ์ของลิงก์มาตรฐานด้วยสไตล์ที่ชัดเจน

let
    Sites = #table(
        type table [Company = text, Website = nullable text],
        {
            {"Microsoft", "https://www.microsoft.com"},
            {"Power Query", "https://learn.microsoft.com/power-query/"},
            {"No website", null}
        }
    ),
    ExcelDocument = #table(
        type table [Sheet = nullable text, Name = nullable text, PartType = nullable text, Properties = nullable record, Data = any],
        {
            {
                "Links", "CompanyLinks", "Table",
                [
                    StartCell = "A1",
                    Hyperlinks =
                    {
                        [UrlColumn = "Website", DisplayText = "Open", Tooltip = "Open website"]
                    },
                    Styles =
                    {
                        [Target = [Column = "Website"], Style = [Font = [Color = "#008272", Underline = "Double", Bold = true]]]
                    }
                ],
                Sites
            }
        }
    )
in
    ExcelDocument

แนบข้อมูลเมตาในแบบฟอร์ม value meta [Hyperlink = [Url = ..., Tooltip = ...]]. ค่านี้ Url จําเป็นในระเบียนเมตาดาต้า แต่สามารถเป็น null ได้ เป็น Tooltip ตัวเลือก ค่าฐานจะกลายเป็นค่าที่แสดงผลและคงรูปแบบชนิดข้อมูลและตัวเลขตามปกติไว้ ถ้าค่าฐานเป็น null และ URL ไม่ว่างเปล่า URL จะถูกแสดง

ตัวอย่างต่อไปนี้ใช้ฟังก์ชันช่วยเหลือเพื่อสร้างข้อความแสดงผลเฉพาะแถว, URL และคําอธิบายเครื่องมือ ค่าที่เชื่อมโยงและค่าปกติสามารถอยู่ร่วมกันในคอลัมน์เดียวกันได้

let
    MakeLink = (displayValue as any, urlValue as nullable text, optional tooltipValue as nullable text) as any =>
        if tooltipValue = null then
            displayValue meta [Hyperlink = [Url = urlValue]]
        else
            displayValue meta [Hyperlink = [Url = urlValue, Tooltip = tooltipValue]],
    Links = #table(
        type table [Resource = any],
        {
            {MakeLink("Power Query documentation", "https://learn.microsoft.com/power-query/", "Read the documentation")},
            {"Not a hyperlink"},
            {MakeLink(null, "https://www.microsoft.com")}
        }
    ),
    ExcelDocument = #table(
        type table [Sheet = nullable text, Name = nullable text, PartType = nullable text, Properties = nullable record, Data = any],
        {
            {"Resources", "ResourceLinks", "SheetData", [], Links}
        }
    )
in
    ExcelDocument

คุณสามารถแนบข้อมูลเมตาของไฮเปอร์ลิงก์ไปยังค่าในคอลัมน์ที่มีการพิมพ์อย่างเข้มงวด รวมถึงตัวเลขและวันที่ เมื่อเซลล์มีทั้งข้อมูลเมตาของลิงก์และกฎคอลัมน์ที่ตรงกัน URL และคําอธิบายเครื่องมือจะมีลําดับความสําคัญสําหรับเซลล์นั้น

โดยค่าเริ่มต้น ปลายทางจะใช้ฟอนต์ 11 จุดขีดเส้นใต้เดียว ซึ่งใช้สีไฮเปอร์ลิงก์ของธีมสมุดงาน (ธีมสี 10), แผนผังฟอนต์ย่อย และตระกูลฟอนต์ 2 ในเวิร์กบุ๊กใหม่ ชื่อฟอนต์คือ Aptos Narrow; ธีมเวิร์กบุ๊กจะกําหนดสีของแบบอักษรและไฮเปอร์ลิงก์ที่มองเห็นได้อย่างแม่นยํา

กฎที่ชัดเจน Styles จะถูกสร้างขึ้นเหนือรูปแบบไฮเปอร์ลิงก์เริ่มต้น ตัวอย่างเช่น ตัวอย่างกฎคอลัมน์จะเปลี่ยนสี ขีดเส้นใต้ และน้ําหนักในขณะที่ยังคงความสัมพันธ์ไฮเปอร์ลิงก์ไว้ ฟิลด์ที่คุณไม่ได้แทนที่จะคงค่าไฮเปอร์ลิงก์ไว้เป็นค่าเริ่มต้น

แต่ละเวิร์กชีตรองรับไฮเปอร์ลิงก์ได้สูงสุด 65,530 ลิงก์

ขีดจํากัดการกําหนดเป้าหมาย

  • เป้าหมายต้องอยู่ในกริดของ Excel ที่มี 1,048,576 แถว และ 16,384 คอลัมน์ เป้าหมายที่เกินขีดจํากัดเหล่านั้นจะคืนค่าความผิดพลาด30096หรือ30097
  • กฎที่ทําให้เซลล์แต่ละเซลล์เป็นรูปธรรมสามารถครอบคลุมได้สูงสุด 1,048,576 เซลล์ แผ่นงานสามารถมีเซลล์ได้สูงสุด 4,194,304 เซลล์ที่ถูกสร้างขึ้นโดยกฎสไตล์
  • เป้าหมายทั้งคอลัมน์และทั้งแถวถูกแทนอย่างมีประสิทธิภาพและไม่ใช้งบประมาณการจัดเก็บต่อเซลล์เพียงเพราะครอบคลุมแผ่นงาน ชอบใช้สําหรับการจัดรูปแบบและขนาดกว้าง ๆ
  • RowHeight ต้องการเป้าหมายข้อความทั้งแถว Width ไม่สามารถใช้เป้าหมายทั้งแถวหรือแถวได้
  • การจัดสไตล์ที่อยู่นอกข้อมูลของชิ้นส่วนมีข้อจํากัดการวางตําแหน่งตามที่อธิบายไว้ในเซลล์สไตล์ที่อยู่นอกข้อมูลของชิ้นส่วน

ขีดจํากัดและการแก้ไขปัญหา

รหัสข้อผิดพลาด สาเหตุ การแก้ปัญหา
30086 เป้าหมายสี่เหลี่ยมผืนผ้ามีพิกัดลบ ใช้พิกัดสี่เหลี่ยมผืนผ้าแบบไม่ติดลบและฐานศูนย์
30087, 30102 ชื่อสีหรือค่าสีไม่ถูกต้อง ใช้สีที่มีชื่อรองรับ, ค่าเลขฐานสิบหก, บันทึก RGB, บันทึกธีม หรือสีอัตโนมัติ
30088 ไม่รองรับค่าสไตล์ที่แสดงรายการ ใช้หนึ่งในค่าที่ระบุไว้ในบทความนี้หรือในข้อผิดพลาด
30089 Width, RowHeight, หรือ Indent อยู่นอกช่วงที่อนุญาต ใช้ค่าภายในช่วงที่ระบุไว้
30090 RowHeight ใช้เป้าหมายที่ไม่ใช่ช่วงข้อความทั้งแถว ใช้เป้าหมายเช่น "2:2".
30091-30093 กฎสไตล์ไม่ใช่เรคคอร์ด หรือขาดTargetหายไป หรือStyle ใช้ได้กับ [Target = ..., Style = ...] ทุกไอเท็ม
30094 TextRotation อยู่นอกช่วงที่อนุญาต ใช้ 0 ถึง 180 หรือ 255 สําหรับข้อความซ้อน
30095, 30098 กฎหรือเวิร์กชีตเกินขีดจํากัดเซลล์ที่ทําให้เป็นวัสดุ จํากัดช่วงต่อเซลล์ให้แคบลง หรือใช้เป้าหมายทั้งแถวและทั้งคอลัมน์
30096, 30097 เป้าหมายเกินขีดจํากัดแถวหรือคอลัมน์ของ Excel อยู่ใน 1,048,576 แถว และ 16,384 คอลัมน์
30100 เป้าหมายสไตล์มีรูปร่างที่ไม่รองรับ ใช้เป้าหมายข้อความหรือหนึ่งในฟอร์มเป้าหมายระเบียนในบทความนี้
30103 เป้าหมายคอลัมน์ที่มีชื่อไม่ตรงกับคอลัมน์ข้อมูล ตรวจสอบชื่อคอลัมน์สคีมาของตาราง Power Query ต้นทางที่แยกตัวพิมพ์ใหญ่-เล็ก หรือใช้เป้าหมายข้อความสําหรับคอลัมน์เวิร์กชีต
30110 คุณสมบัติไม่ได้รับการสนับสนุนในระเบียนสไตล์ปัจจุบัน ย้ายฟิลด์ไปยังคอมโพเนนต์ที่ถูกต้องหรือลบออก
30111 Width ถูกนําไปใช้กับเป้าหมายทั้งแถวหรือทั้งแผ่น กําหนดเป้าหมายไปที่คอลัมน์ เซลล์ หรือช่วงที่มีขอบเขต
30187 การรวมขอบเขตจะทําให้เกิดเซลล์มากเกินไป ลดขอบเขตที่รวมกันหรือลบขอบเขตขอบเขตออก

สําหรับข้อผิดพลาดของตารางนําทางและชิ้นส่วน ดูที่ การแก้ไขปัญหาตารางนําทางใน Excel

ปัญหาทั่วไป

กฎความกว้างจะไม่เปลี่ยนคอลัมน์ที่คาดหวัง

สาเหตุ:เป้าหมายระเบียน เช่น [Column = "A"] ใช้ชื่อสคีมาของตารางต้นทาง ไม่ใช่ตัวอักษรคอลัมน์ใน Excel ในแผ่นที่มีชิ้นส่วนทับซ้อนกัน ความกว้างแบบชัดเจนอีกแบบหนึ่งก็อาจมีลําดับความสําคัญได้เช่นกัน

วิธีแก้ไข: ใช้ "A:A" สําหรับคอลัมน์ A ของเวิร์กชีตใช้ [Column = "Description"] สําหรับคอลัมน์ต้นทางที่ชื่อว่า Description. ใช้เจ้าของความกว้างเฉพาะตัวหนึ่งสําหรับแต่ละคอลัมน์ในแผ่นงาน

กฎ RowHeight ส่งคืนข้อผิดพลาด 30090

สาเหตุ:RowHeight ถูกนําไปใช้กับเป้าหมายระเบียนหรือช่วงเซลล์ที่มีขอบเขต

วิธีแก้ไข: ใช้เป้าหมายข้อความทั้งแถว เช่น [Target = "2:2", Style = [RowHeight = 30]].

รูปแบบหมายเลขที่กําหนดเองถูกปฏิเสธ

สาเหตุ: ข้อความตรง ๆ จะไม่ถูกอัญประกาศหรือหลบหนี โค้ดมีโทเค็นที่ไม่รองรับ หรือเครื่องหมายอัญประกาศหรือวงเล็บไม่สมดุล

วิธีแก้ไข:ใส่ข้อความตรงตัวในเครื่องหมายคําพูดคู่ภายในโค้ดรูปแบบ Excel ใน M ให้เพิ่มเครื่องหมายคําพูดเป็นสองเท่า เช่น [NumberFormat = "#,##0 ""USD"""].

ฟอนต์ที่ร้องขอจะดูแตกต่างใน Excel

สาเหตุ:ฟอนต์ที่ร้องขอไม่ได้ติดตั้งบนคอมพิวเตอร์ที่เปิดสมุดงาน ดังนั้น Excel จึงแทนที่ฟอนต์แทน

วิธีแก้ไข: ใช้ฟอนต์ที่หาได้ง่ายและสามารถระบุการจัดประเภทที่ตรงกัน Family เพื่อปรับปรุงการแทนที่

สไตล์หรือสีขอบไม่ปรากฏ

สาเหตุ: ในระดับชายแดน Style และ Color ใช้ได้เฉพาะผ่านรหัส Outline ย่อเท่านั้น

ความละเอียด: เพิ่ม Outline = true, หรือกําหนดขอบโดยตรง เช่น [Border = [Top = [Style = "Thin", Color = "Red"]]].

สาเหตุ:URL ที่ไม่ว่างเปล่าเป็น URL สัมพัทธ์หรือใช้สคีมอื่นที่ไม่ใช่ http หรือhttps

วิธีแก้ไข: ให้ URL เว็บครบถ้วน เช่น https://www.microsoft.com, หรือใช้ข้อความว่างเปล่าหรือเปล่าเมื่อเซลล์ไม่ควรเป็นไฮเปอร์ลิงก์