행 및 열 작업

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

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

이러한 예에서 자리표시자 SPREADSHEET_IDSHEET_ID 는 이러한 ID를 제공할 위치를 나타냅니다. 스프레드시트 URL에서 스프레드시트 ID를 확인할 수 있습니다. 시트 IDspreadsheets.get 메서드를 사용하여 가져올 수 있습니다. 범위는 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에 빈 열 2개를 삽입합니다. 두 번째 요청은 행 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
      }
    },
  ],
}