행 및 열 작업

Google Sheets API를 사용하면 시트에서 행과 열을 추가, 삭제, 조작할 수 있습니다. 이 페이지의 예시는 Sheets API로 수행할 수 있는 일반적인 행 및 열 작업을 보여줍니다.

이러한 예는 언어 중립적인 HTTP 요청의 형식으로 제공됩니다. Google API 클라이언트 라이브러리를 사용하여 다양한 언어로 일괄 업데이트를 구현하는 방법은 스프레드시트 업데이트를 참고하세요.

이 예에서 자리표시자 SPREADSHEET_IDSHEET_ID는 이러한 ID를 제공하는 위치를 나타냅니다. 스프레드시트 URL에서 스프레드시트 ID를 확인할 수 있습니다. spreadsheets.get 메서드를 사용하여 시트 ID를 가져올 수 있습니다. 범위는 A1 표기법을 사용하여 지정됩니다. 범위의 예로는 Sheet1!A1:D5가 있습니다.

열 너비 또는 행 높이 조정

다음 spreadsheets.batchUpdate 코드 샘플은 UpdateDimensionPropertiesRequest를 사용하여 A열의 너비 속성을 160픽셀로 업데이트하는 방법을 보여줍니다. 두 번째 요청은 처음 세 행의 행 높이 속성을 40픽셀로 업데이트합니다. dimension 필드는 작업을 시트의 열 또는 행에 적용할지를 결정합니다.

요청 프로토콜은 아래와 같습니다.

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

빈 행 또는 열 추가

다음 spreadsheets.batchUpdate 코드 샘플은 AppendDimensionRequest를 사용하여 행과 열을 추가하는 방법을 보여줍니다. 첫 번째 요청은 세 개의 빈 행을 시트 끝에 추가하는 반면 두 번째 요청은 하나의 빈 열을 추가합니다. dimension 필드는 작업을 시트의 열 또는 행에 적용할지를 결정합니다.

요청 프로토콜은 아래와 같습니다.

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

자동으로 열 크기 조정

다음 spreadsheets.batchUpdate 코드 샘플은 AutoResizeDimensionsRequest를 사용하여 열 콘텐츠의 크기에 따라 열 A:C의 크기를 조절하는 방법을 보여줍니다. dimension 필드는 작업이 시트의 열에 적용됨을 나타냅니다.

요청 프로토콜은 아래와 같습니다.

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

자동으로 행 크기 조정

다음 spreadsheets.batchUpdate 코드 샘플은 AutoResizeDimensionsRequest를 사용하여 처음 세 행의 행 높이를 지우는 방법을 보여줍니다. 그러면 각 행에 있는 셀의 콘텐츠에 따라 행 높이가 동적으로 늘어납니다. dimension 필드는 작업이 시트의 행에 적용됨을 나타냅니다.

요청 프로토콜은 아래와 같습니다.

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

행 또는 열 삭제

다음 spreadsheets.batchUpdate 코드 샘플은 DeleteDimensionRequest를 사용하여 시트의 처음 3개 행을 삭제하는 방법을 보여줍니다. 두 번째 요청은 B:D열을 삭제합니다. dimension 필드는 작업을 시트의 열 또는 행에 적용할지를 결정합니다.

요청 프로토콜은 아래와 같습니다.

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

빈 행 또는 열 삽입

다음 spreadsheets.batchUpdate 코드 샘플은 InsertDimensionRequest를 사용하여 특정 색인에 열이나 행을 삽입 (예: 시트 상단에 빈 행 앞에 삽입)하는 방법을 보여줍니다. 첫 번째 요청은 열 C에 빈 열 두 개를 삽입합니다. 두 번째 요청은 행 1에서 시작하여 세 개의 빈 행을 삽입합니다.

dimension 필드는 작업을 시트의 열 또는 행에 적용할지를 결정합니다.

true인 경우 inheritFromBefore 필드는 새 열 또는 행에 이전 행 또는 열과 동일한 속성을 제공하고, false인 경우 새 열 또는 행 뒤의 측정기준에서 상속하도록 Sheets API에 지시합니다. 1행에 행을 삽입하거나 열 A에 열을 삽입하는 경우에는 inheritFromBefore가 true일 수 없습니다.

요청 프로토콜은 아래와 같습니다.

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

행 또는 열 이동

다음 spreadsheets.batchUpdate 코드 샘플은 MoveDimensionRequest를 사용하여 A열을 D열 위치로 이동하는 방법을 보여줍니다. 두 번째 요청은 5~10행을 행 20 위치로 이동합니다.

dimension 필드는 작업을 시트의 열 또는 행에 적용할지를 결정합니다. destinationIndex 필드는 0부터 시작하는 시작 색인을 사용하여 소스 데이터를 이동할 위치를 결정합니다.

요청 프로토콜은 아래와 같습니다.

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