Google Sheets API ช่วยให้คุณอัปเดตการจัดรูปแบบของเซลล์และช่วงได้ ในสเปรดชีต ตัวอย่างในหน้านี้แสดงให้เห็นว่า การจัดรูปแบบจะสามารถทำได้โดยใช้ Sheets API คุณสามารถ ดูตัวอย่างการจัดรูปแบบตามเงื่อนไขเพิ่มเติมได้ใน การจัดรูปแบบ
เมื่ออัปเดตสเปรดชีต คำขอบางประเภทอาจแสดงคำตอบ
ข้อมูลเหล่านี้จะแสดงผลในอาร์เรย์ โดยแต่ละการตอบกลับจะใช้ดัชนีเดียวกับ
คำขอที่เกี่ยวข้อง บางคำขอไม่มีคำตอบ และสำหรับคำขอเหล่านั้น
ไม่มีการตอบกลับ โครงสร้างการตอบกลับสำหรับตัวอย่างเหล่านี้จะอยู่ใน
spreadsheets.batchUpdate
ตัวอย่างเหล่านี้จะแสดงในรูปแบบคำขอ HTTP เป็นภาษา เป็นกลาง หากต้องการทราบวิธีใช้การอัปเดตเป็นกลุ่มในภาษาต่างๆ โดยใช้ ไลบรารีของไคลเอ็นต์ Google API โปรดดูการอัปเดต สเปรดชีต
ในตัวอย่างต่อไปนี้ ตัวยึดตำแหน่ง SPREADSHEET_ID และ SHEET_ID
จะระบุตําแหน่งที่คุณจะส่งรหัสเหล่านั้น คุณจะพบสเปรดชีต
รหัสใน URL ของสเปรดชีต คุณสามารถ
รหัสชีตโดยใช้เมธอด
spreadsheets.get
มีการระบุช่วงโดยใช้รูปแบบ A1 CANNOT TRANSLATE
ช่วงตัวอย่างคือ Sheet1!A1:D5
ในวิดีโอด้านบน คุณจะได้เรียนรู้วิธีจัดรูปแบบเซลล์ของสเปรดชีตด้วยวิธีต่างๆ ได้แก่ การสร้างแถวที่ตรึงไว้ การทำเซลล์เป็นตัวหนา การใช้สกุลเงิน การจัดรูปแบบ ตรวจสอบเซลล์ และการจำกัดค่าของเซลล์
แก้ไขเส้นขอบของเซลล์
ดังต่อไปนี้
spreadsheets.batchUpdate
ตัวอย่างโค้ดจะแสดงวิธีใช้
UpdateBordersRequest
เพื่อให้แต่ละเซลล์ในช่วง A1:F10 มีเส้นขอบด้านบนและด้านล่างเป็นเส้นประสีฟ้า
ช่อง innerHorizontal
สร้างเส้นขอบแนวนอนที่ภายในของช่วง
การข้ามช่องจะส่งผลให้มีเพียงการใส่เส้นขอบด้านบนและ
ที่ด้านล่างของทั้งช่วง
โปรโตคอลคำขอแสดงอยู่ด้านล่างนี้
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateBorders": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 6 }, "top": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "bottom": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "innerHorizontal": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, } } ] }
จัดรูปแบบแถวส่วนหัว
ดังต่อไปนี้
spreadsheets.batchUpdate
ตัวอย่างโค้ดจะแสดงวิธีใช้
RepeatCellRequest
เพื่อจัดรูปแบบแถวส่วนหัวในชีต คำขอแรกจะอัปเดตสีข้อความ
สีพื้นหลัง ขนาดแบบอักษรของข้อความ และการจัดชิดขอบของข้อความ
ตัวหนา การละเว้นดัชนีคอลัมน์ในช่อง range
จะทำให้
แถวที่จะจัดรูปแบบ คำขอที่ 2 จะปรับคุณสมบัติของชีตเพื่อให้
แถวส่วนหัวถูกตรึง
โปรโตคอลคำขอแสดงอยู่ด้านล่างนี้
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 1 }, "cell": { "userEnteredFormat": { "backgroundColor": { "red": 0.0, "green": 0.0, "blue": 0.0 }, "horizontalAlignment" : "CENTER", "textFormat": { "foregroundColor": { "red": 1.0, "green": 1.0, "blue": 1.0 }, "fontSize": 12, "bold": true } } }, "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)" } }, { "updateSheetProperties": { "properties": { "sheetId": SHEET_ID, "gridProperties": { "frozenRowCount": 1 } }, "fields": "gridProperties.frozenRowCount" } } ] }
ผสานเซลล์
ดังต่อไปนี้
spreadsheets.batchUpdate
ตัวอย่างโค้ดจะแสดงวิธีใช้
MergeCellsRequest
เพื่อผสานเซลล์ คำขอแรกจะรวมช่วง A1:B2 ไว้ในเซลล์เดียว
คำขอที่ 2 จะรวมคอลัมน์ใน A3:B6 และเว้นแต่ละแถวไว้แยกกัน
โปรโตคอลคำขอแสดงอยู่ด้านล่างนี้
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 2, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_ALL" } }, { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 2, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_COLUMNS" } }, ] }
ตั้งค่ารูปแบบวันที่และเวลาที่กำหนดเองสำหรับช่วงทศนิยม
ดังต่อไปนี้
spreadsheets.batchUpdate
ตัวอย่างโค้ดจะแสดงวิธีใช้
RepeatCellRequest
เพื่ออัปเดตเซลล์ให้มีรูปแบบวันที่และเวลาที่กำหนดเอง คำขอแรก
ให้รูปแบบวันที่และเวลาที่กำหนดเอง hh:mm:ss am/pm,
ddd mmm dd yyyy
แก่เซลล์ในช่วง A1:A10 ตัวอย่างวันที่และเวลาในรูปแบบนี้ ได้แก่ "02:05:07 PM, Sun เม.ย.
03 2016"
คำขอที่ 2 ให้รูปแบบตัวเลขที่กำหนดเองในเซลล์ใน B1:B10
#,##0.0000
ซึ่งระบุว่าควรจัดกลุ่มตัวเลขด้วยเครื่องหมายจุลภาค
ตัวคั่นควรประกอบด้วยตัวเลข 4 หลักหลังจุดทศนิยม และควรมีทั้งหมด 4 หลัก
ควรทิ้งศูนย์นำ 1 นัด เช่น หมายเลข "3.14" มีการแสดงผล
เป็น "3.1400" ขณะที่ "12345.12345" จะแสดงผลเป็น "12,345.1235"
โปรโตคอลคำขอแสดงอยู่ด้านล่างนี้
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 1 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "DATE", "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy" } } }, "fields": "userEnteredFormat.numberFormat" } }, { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 1, "endColumnIndex": 2 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "NUMBER", "pattern": "#,##0.0000" } } }, "fields": "userEnteredFormat.numberFormat" } } ] }