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 với hàng và cột bằng Sheets API.

Các ví dụ này được trình bày dưới dạng yêu cầu HTTP để không phân biệt ngôn ngữ. Để tìm hiểu cách triển khai tính năng cập nhật hàng loạt bằng 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 vị trí 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 dải ô được chỉ định bằng ký hiệu A1. Ví dụ về dải ô là Trang_tính1!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 ba hàng đầu tiên thành 40 pixel. Trường dimension xác định xem toán tử có áp dụng cho các cột hay hàng của một 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 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, còn yêu cầu thứ hai sẽ thêm một cột trống. Trường dimension xác định xem toán tử có áp dụng cho các cột hay hàng của một trang tính hay không.

Giao thức yêu cầu được hiển thị bên dưới.

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ị bên dưới.

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 ba hàng đầu tiên. Sau đó, chiều cao của hàng sẽ tăng lên một cách linh động dựa trên nội dung của các ô trong mỗi hàng. Trường dimension cho biết rằng phép toán này áp dụng cho các hàng của trang tính.

Giao thức yêu cầu được hiển thị bên dưới.

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ẫu mã 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 toán tử có áp dụng cho các cột hay hàng của một 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 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ư 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 vào 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 xem thao tác này có áp dụng cho các cột hoặc hàng của trang tính hay không.

Nếu đúng, 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 như hàng hoặc cột trước đó. Nếu sai, các thuộc tính sẽ được kế thừa từ các phương diện sau các cột hoặc hàng mới. inheritFromBefore không thể là đú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 hiển thị bên dưới.

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 liệu toán tử có áp dụng cho các cột hay hàng của một 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 hiển thị bên dưới.

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
      }
    },
  ],
}