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

API Google Trang tính cho phép bạn thêm, xoá và chỉnh sửa 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 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 yêu cầu HTTP để trung lập về ngôn ngữ. Để tìm hiểu cách triển khai quá trình cập nhật hàng loạt bằng nhiều ngôn ngữ bằng cách sử dụ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 những 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ã nhận dạng 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. Một dải ô ví dụ là Sheet1!A1:D5.

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

Mã mẫu spreadsheets.batchUpdate sau đây cho biết cách sử 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 cập nhật thuộc tính chiều cao hàng của 3 hàng đầu tiên thành 40 pixel. Trường dimension xác định liệu thao tác áp dụng cho các cột hoặc hàng của trang tính.

Giao thức yêu cầu được hiển thị 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 nối 3 hàng trống vào cuối trang tính, trong khi yêu cầu thứ hai nối thêm một cột trống duy nhất. Trường dimension xác định liệu thao tác áp dụng cho các cột hoặc hàng của trang tính.

Giao thức yêu cầu được hiển thị 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 hiển thị 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 của 3 hàng đầu tiên. Sau đó, chiều cao của hàng tăng trưởng linh độ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 hiển thị 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 trang tính. Yêu cầu thứ hai xoá các cột B:D. Trường dimension xác định xem thao tác áp dụng cho các cột hay hàng của trang tính.

Giao thức yêu cầu được hiển thị 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 một 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ư đặt trước các hàng trống ở đầ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 chèn 3 hàng trống bắt đầu từ hàng 1.

Trường dimension xác định xem thao tác áp dụng cho các cột hay hàng của trang tính.

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

Giao thức yêu cầu được hiển thị 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 di chuyển các hàng từ 5 đến 10 sang vị trí hàng 20.

Trường dimension xác định xem thao tác áp dụng cho các cột hay hàng của trang tính. 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 hiển thị 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
      }
    },
  ],
}