Thao tác với hàng và cột

API Google Trang tính cho phép bạn thêm, xoá và thao tác với các hàng và cột trong 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 phổ biến đối với hàng và cột bằng API Trang tính.

Những ví dụ này được trình bày dưới dạng các yêu cầu HTTP để đảm bảo trung lập về ngôn ngữ. Để tìm hiểu cách triển khai tính năng cập nhật theo lô cho nhiều ngôn ngữ bằng thư viện ứng dụng API của Google, hãy xem phần Cập nhật bảng tính.

Trong các ví dụ này, phần giữ chỗ SPREADSHEET_IDSHEET_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ã bảng tính trong URL của bảng tính. Bạn có thể lấy mã trang tính bằng cách sử dụng phương thức spreadsheets.get. Các dải ô được chỉ định bằng ký hiệu A1. Dải ô ví dụ là Sheet1!A1:D5.

Điều chỉnh chiều rộng cột hoặc chiều cao của hàng

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách dùng UpdateDimensionPropertiesRequest để cập nhật thuộc tính chiều rộng của cột A thành 160 pixel. Yêu cầu thứ hai sẽ cập nhật thuộc tính chiều cao hàng của ba hàng đầu tiên thành 40 pixel. Trường dimension xác định liệu thao tác có áp dụng cho các cột hay hàng của trang tính hay không.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "updateDimensionProperties": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 1
        },
        "properties": {
          "pixelSize": 160
        },
        "fields": "pixelSize"
      }
    },
    {
      "updateDimensionProperties": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        },
        "properties": {
          "pixelSize": 40
        },
        "fields": "pixelSize"
      }
    }
  ]
}

Thêm các hàng hoặc cột trống

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng AppendDimensionRequest để thêm hàng và cột. Yêu cầu đầu tiên sẽ thêm 3 hàng trống vào cuối trang tính, trong khi yêu cầu thứ hai thêm một cột trống duy nhất. Trường dimension xác định liệu thao tác có áp dụng cho các cột hay hàng của trang tính hay không.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "appendDimension": {
        "sheetId": SHEET_ID,
        "dimension": "ROWS",
        "length": 3
      }
    },
    {
      "appendDimension": {
        "sheetId": SHEET_ID,
        "dimension": "COLUMNS",
        "length": 1
      }
    }
  ]
}

Tự động đổi kích thước cột

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng AutoResizeDimensionsRequest để đổi kích thước cột A:C, dựa trên kích thước của nội dung cột. Trường dimension cho biết thao tác áp dụng cho các cột của trang tính.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "autoResizeDimensions": {
        "dimensions": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    }
  ]
}

Tự động đổi kích thước hàng

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng AutoResizeDimensionsRequest để xoá chiều cao hàng của 3 hàng đầu tiên. Sau đó, chiều cao của hàng sẽ tăng tự động dựa trên nội dung của các ô trong mỗi hàng. Trường dimension cho biết thao tác áp dụng cho các hàng của trang tính.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "autoResizeDimensions": {
        "dimensions": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    }
  ]
}

Xóa hàng hoặc cột

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng DeleteDimensionRequest để xoá 3 hàng đầu tiên trong một trang tính. Yêu cầu thứ hai sẽ xoá các cột B:D. Trường dimension xác định liệu thao tác có áp dụng cho các cột hoặc hàng của trang tính hay không.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "deleteDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        }
      }
    },
    {
      "deleteDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 1,
          "endIndex": 4
        }
      }
    },
  ],
}

Chèn hàng hoặc cột trống

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng InsertDimensionRequest để chèn cột hoặc hàng tại một chỉ mục cụ thể (chẳng hạn như thêm các hàng trống vào đầu trang tính). Yêu cầu đầu tiên chèn hai cột trống tại cột C. Yêu cầu thứ hai sẽ chèn 3 hàng trống bắt đầu từ hàng 1.

Trường dimension xác định liệu thao tác có áp dụng cho các cột hoặc hàng của trang tính hay không.

Nếu là true, trường inheritFromBefore sẽ yêu cầu API Trang tính cung cấp cho các cột hoặc hàng mới các thuộc tính giống với hàng hoặc cột trước đó, và nếu sai, sẽ kế thừa từ các phương diện sau cột hoặc hàng mới. inheritFromBefore không thể đúng nếu chèn một hàng ở hàng 1 hoặc một cột ở cột A.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "insertDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 2,
          "endIndex": 4
        },
        "inheritFromBefore": true
      }
    },
    {
      "insertDimension": {
        "range": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 0,
          "endIndex": 3
        },
        "inheritFromBefore": false
      }
    },
  ],
}

Di chuyển hàng hoặc cột

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử dụng MoveDimensionRequest để di chuyển cột A sang vị trí cột D. Yêu cầu thứ hai sẽ di chuyển các hàng 5–10 đến vị trí hàng 20.

Trường dimension xác định liệu thao tác có áp dụng cho các cột hoặc hàng của trang tính hay không. Trường destinationIndex xác định vị trí di chuyển dữ liệu nguồn bằng cách sử dụng chỉ mục bắt đầu dựa trên 0.

Giao thức yêu cầu được trình bày dưới đây.

POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{
  "requests": [
    {
      "moveDimension": {
        "source": {
          "sheetId": SHEET_ID,
          "dimension": "COLUMNS",
          "startIndex": 0,
          "endIndex": 1
        },
        "destinationIndex": 3
      }
    },
    {
      "moveDimension": {
        "source": {
          "sheetId": SHEET_ID,
          "dimension": "ROWS",
          "startIndex": 4,
          "endIndex": 10
        },
        "destinationIndex": 19
      }
    },
  ],
}