การดำเนินการแถว & คอลัมน์

Google Sheets API ช่วยให้คุณเพิ่ม นำออก และจัดการแถวและคอลัมน์ในชีตได้ ตัวอย่างในหน้านี้จะแสดงให้เห็นวิธีดำเนินการแถวและคอลัมน์ทั่วไปด้วย Sheets API

ตัวอย่างเหล่านี้มาในรูปแบบคำขอ HTTP ควรเป็นกลางทางภาษา หากต้องการดูวิธีใช้การอัปเดตเป็นกลุ่มในภาษาต่างๆ โดยใช้ไลบรารีของไคลเอ็นต์ Google API โปรดดูอัปเดตสเปรดชีต

ในตัวอย่างต่อไปนี้ ตัวยึดตำแหน่ง SPREADSHEET_ID และ SHEET_ID ระบุตำแหน่งที่คุณจะระบุรหัสเหล่านั้น คุณจะเห็นรหัสของสเปรดชีตใน URL ของสเปรดชีต คุณดูรหัสชีตได้โดยใช้เมธอด spreadsheets.get ระบบระบุช่วงโดยใช้รูปแบบ A1 ช่วงตัวอย่างคือ Sheet1!A1:D5

ปรับความกว้างของคอลัมน์หรือความสูงของแถว

ตัวอย่างโค้ด spreadsheets.batchUpdate ต่อไปนี้แสดงวิธีใช้ UpdateDimensionPropertiesRequest เพื่ออัปเดตพร็อพเพอร์ตี้ความกว้างของคอลัมน์ A เป็น 160 พิกเซล คำขอที่ 2 จะอัปเดตพร็อพเพอร์ตี้ความสูงของแถว 3 แถวแรกเป็น 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 แถวต่อท้ายชีต ส่วนคำขอที่ 2 เพิ่มคอลัมน์ว่าง 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 เพื่อล้างความสูงของแถว 3 แถวแรก ความสูงของแถวก็จะเติบโต แบบไดนามิกตามเนื้อหาของเซลล์ในแต่ละแถว ช่อง 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 แถวแรกในชีต คำขอที่ 2 จะลบคอลัมน์ 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 เพื่อแทรกคอลัมน์หรือแถวที่ดัชนีหนึ่งๆ (เช่น แถวว่างที่มีอยู่ล่วงหน้าที่ด้านบนของชีต) คำขอแรกแทรกคอลัมน์ว่างเปล่า 2 คอลัมน์ที่คอลัมน์ C คำขอที่ 2 จะแทรกแถวว่าง 3 แถวโดยเริ่มจากแถวที่ 1

ช่อง dimension จะระบุว่าการดำเนินการจะใช้กับคอลัมน์หรือแถวในชีต

หากเป็น "จริง" ช่อง inheritFromBefore จะบอกให้ Sheets API กำหนดให้คอลัมน์หรือแถวใหม่มีพร็อพเพอร์ตี้เดียวกันกับแถวหรือคอลัมน์ก่อนหน้า หากเป็น "เท็จ" จะรับค่าจากมิติข้อมูลหลังคอลัมน์หรือแถวใหม่ inheritFromBefore จะไม่เป็น "จริง" หากแทรกแถวที่แถว 1 หรือคอลัมน์ที่คอลัมน์ A

โปรโตคอลคำขอแสดงอยู่ด้านล่างนี้

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 คำขอที่ 2 ย้ายแถว 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
      }
    },
  ],
}