Bạn có thể cập nhật định dạng của các ô và phạm vi trong bảng tính bằng API Google Trang tính. Các ví dụ trên trang này minh hoạ cách thực hiện một số thao tác định dạng phổ biến bằng API Trang tính. Bạn có thể xem thêm các ví dụ về định dạng có điều kiện trên trang Công thức định dạng có điều kiện.
Khi cập nhật bảng tính, một số loại yêu cầu có thể trả về phản hồi.
Các phản hồi này được trả về trong một mảng, trong đó mỗi phản hồi chiếm cùng một chỉ mục với yêu cầu tương ứng. Một số yêu cầu không có phản hồi và đối với những yêu cầu đó, phản hồi sẽ trống. Bạn có thể tìm thấy cấu trúc phản hồi cho các ví dụ này trong
spreadsheets.batchUpdate.
Các ví dụ này được trình bày dưới dạng yêu cầu HTTP để không phụ thuộc vào ngôn ngữ. Để tìm hiểu cách triển khai tính năng cập nhật theo lô bằng các ngôn ngữ khác nhau thông qua thư viện ứng dụng API Google, hãy xem bài viết Cập nhật bảng tính.
Trong các ví dụ này, phần giữ chỗ SPREADSHEET_ID và SHEET_ID
cho biết nơi bạn sẽ cung cấp các mã nhận dạng đó. Bạn có thể tìm thấy mã nhận dạng
bảng tính trong URL của bảng tính.
Bạn có thể lấy mã nhận dạng trang tính bằng cách sử dụng
phương thức
spreadsheets.get. Các phạm vi được chỉ định bằng ký hiệu A1
notation. Ví dụ về phạm vi là Sheet1!A1:D5.
Trong video trên, bạn sẽ tìm hiểu cách định dạng ô trong bảng tính theo nhiều cách, bao gồm: tạo hàng cố định, in đậm ô, triển khai định dạng tiền tệ, thực hiện xác thực ô và hạn chế giá trị ô.
Chỉnh sửa đường viền ô
Mã mẫu
spreadsheets.batchUpdate
sau đây cho biết cách sử dụng
UpdateBordersRequest
để tạo đường viền trên và dưới màu xanh dương, nét đứt cho mỗi ô trong phạm vi A1:F10. Trường innerHorizontal tạo đường viền ngang ở bên trong phạm vi.
Nếu bỏ qua trường này, đường viền sẽ chỉ được thêm vào đầu và cuối toàn bộ phạm vi.
Giao thức yêu cầu được trình bày bên dưới.
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
},
},
}
}
]
}Định dạng hàng tiêu đề
Mã mẫu
spreadsheets.batchUpdate
sau đây cho biết cách sử dụng
RepeatCellRequest
để định dạng hàng tiêu đề trong một trang tính. Yêu cầu đầu tiên cập nhật màu văn bản, màu nền, kích thước phông chữ văn bản và căn chỉnh văn bản, đồng thời in đậm văn bản. Nếu bỏ qua chỉ mục cột trong trường range, toàn bộ hàng sẽ được định dạng. Yêu cầu thứ hai điều chỉnh các thuộc tính của trang tính để hàng tiêu đề được cố định.
Giao thức yêu cầu được trình bày bên dưới.
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" } } ] }
Hợp nhất ô
Mã mẫu
spreadsheets.batchUpdate
sau đây cho biết cách sử dụng
MergeCellsRequest
để hợp nhất ô. Yêu cầu đầu tiên hợp nhất phạm vi A1:B2 thành một ô. Yêu cầu thứ hai hợp nhất các cột trong A3:B6, đồng thời giữ nguyên các hàng.
Giao thức yêu cầu được trình bày bên dưới.
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"
}
},
]
}Đặt định dạng ngày giờ hoặc số thập phân tuỳ chỉnh cho một phạm vi
Mã mẫu
spreadsheets.batchUpdate
sau đây cho biết cách sử dụng
RepeatCellRequest
để cập nhật các ô nhằm có định dạng ngày giờ và số tuỳ chỉnh. Yêu cầu đầu tiên
cung cấp cho các ô trong phạm vi A1:A10 định dạng ngày giờ tuỳ chỉnh hh:mm:ss am/pm,
ddd mmm dd yyyy. Ví dụ về ngày giờ ở định dạng này là: "02:05:07 PM, Sun Apr 03 2016".
Yêu cầu thứ hai cung cấp cho các ô trong B1:B10 định dạng số tuỳ chỉnh #,##0.0000, cho biết rằng các số phải được nhóm bằng dấu phẩy, phải có 4 chữ số sau dấu thập phân và tất cả các số 0 đứng đầu (trừ một số) phải bị loại bỏ. Ví dụ: số "3.14" được hiển thị là "3.1400", trong khi "12345.12345" được hiển thị là "12,345.1235".
Để biết thêm thông tin, hãy xem bài viết Định dạng ngày và số formats.
Giao thức yêu cầu được trình bày bên dưới.
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" } } ] }