행 및 열 작업

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를 사용하여 행과 열을 추가하는 방법을 보여줍니다. 첫 번째 요청은 시트 끝에 빈 행 3개를 추가하고 두 번째 요청은 빈 열 1개를 추가합니다. 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는 참이 될 수 없습니다.

요청 프로토콜은 다음과 같습니다.

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