행 및 열 작업

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를 사용하여 시트의 처음 세 행을 삭제하는 방법을 보여줍니다. 두 번째 요청은 열 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부터 빈 행 3개를 삽입합니다.

dimension 필드는 시트의 열 또는 행에 작업이 적용되는지 여부를 결정합니다.

이 필드가 true이면 inheritFromBefore 필드는 Sheets API에 새 열 또는 행에 이전 행 또는 열과 동일한 속성을 지정하도록 알리고, false이면 새 열 또는 행 뒤의 측정기준에서 상속하도록 알립니다. 행 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
      }
    },
  ],
}