Google Sheets API ช่วยให้คุณอ่านค่าจากเซลล์ ช่วง ชุดของช่วง และทั้งชีตได้ ตัวอย่างในหน้านี้จะแสดงการดำเนินการอ่านทั่วไปบางส่วนกับทรัพยากร spreadsheets.values
นอกจากนี้ คุณยังอ่านค่าของเซลล์โดยใช้เมธอด spreadsheets.get
ได้ด้วย แต่โดยทั่วไปแล้ว spreadsheets.values.get
หรือ spreadsheets.values.batchGet
จะง่ายกว่า
ตัวอย่างเหล่านี้แสดงในรูปแบบคำขอ HTTP โดยแสดงเป็นภาษากลาง หากต้องการดูวิธีใช้การอ่านในภาษาต่างๆ โดยใช้ไลบรารีของไคลเอ็นต์ Google API โปรดดูอ่านและเขียนค่าของเซลล์
ในตัวอย่างต่อไปนี้ ตัวยึดตำแหน่ง SPREADSHEET_ID จะระบุตำแหน่งที่คุณจะให้รหัสสเปรดชีต ซึ่งดูได้จาก URL ของสเปรดชีต ช่วงที่จะอ่านจะกำหนดโดยใช้รูปแบบ A1 ใน URL ของคำขอ ช่วงตัวอย่างคือ Sheet1!A1:D5
ข้อมูลต้นฉบับ
สำหรับตัวอย่างเหล่านี้ สมมติว่าสเปรดชีตที่อ่านมีข้อมูลต้นฉบับต่อไปนี้ในชีตแรก ("Sheet1") สตริงในแถวแรกคือป้ายกำกับสำหรับแต่ละคอลัมน์ หากต้องการดูตัวอย่างวิธีการอ่านจากชีตอื่นๆ ในสเปรดชีต โปรดดูที่หมายเหตุ A1
A | B | C | D | |
1 | รายการ | ค่าใช้จ่าย | มีในสต็อก | วันที่จัดส่ง |
2 | ตั๋วขึ้นชิงช้าสวรรค์ | 205.00 THB | 4 | 1/3/2016 |
3 | ประตู | $15 | 2 | 15/3/2016 |
4 | เครื่องยนต์ | $100 | 1 | 20/3/2016 |
5 | ผลรวม | 135.50 THB | 7 | 20/3/2016 |
อ่านช่วงเดียว
ตัวอย่างโค้ด spreadsheets.values.get
ต่อไปนี้แสดงวิธีอ่านค่าจากช่วง Sheet1!A1:D5 และแสดงผลค่าในคำตอบ แถวและคอลัมน์ต่อท้ายว่างเปล่า
โปรโตคอลคำขอจะแสดงที่นี่
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D5
คำตอบประกอบด้วยออบเจ็กต์ ValueRange
ที่อธิบายค่าของช่วง ช่อง majorDimension
จะระบุว่าอาร์เรย์เป็นรายการค่าที่จัดตามแถว
{ "range": "Sheet1!A1:D5", "majorDimension": "ROWS", "values": [ ["Item", "Cost", "Stocked", "Ship Date"], ["Wheel", "$20.50", "4", "3/1/2016"], ["Door", "$15", "2", "3/15/2016"], ["Engine", "$100", "1", "30/20/2016"], ["Totals", "$135.5", "7", "3/20/2016"] ], }
อ่านช่วงเดียวที่จัดกลุ่มตามคอลัมน์
ตัวอย่างโค้ด spreadsheets.values.get
ต่อไปนี้แสดงวิธีอ่านค่าจากช่วง Sheet1!A1:D3 และแสดงผลค่าในคำตอบ แต่จัดกลุ่มตามคอลัมน์ แถวและคอลัมน์ต่อท้ายที่ว่างเปล่า
โปรโตคอลคำขอจะแสดงที่นี่
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D3?majorDimension=COLUMNS
คำตอบประกอบด้วยออบเจ็กต์ ValueRange
ที่อธิบายค่าของช่วง ช่อง majorDimension
จะระบุว่าอาร์เรย์เป็นรายการค่าที่จัดตามคอลัมน์
{ "range": "Sheet1!A1:D3", "majorDimension": "COLUMNS", "values": [ ["Item", "Wheel", "Door"], ["Cost", "$20.50", "$15"], ["Stocked", "4", "2"], ["Ship Date", "3/1/2016", "3/15/2016"] ], }
อ่านช่วงเดียวที่มีตัวเลือกการแสดงผล
ตัวอย่างโค้ด
spreadsheets.values.get
ต่อไปนี้จะแสดงวิธีอ่านค่าจากช่วง Sheet1!A1:D5 และแสดงผลค่าในคำตอบ แต่จะใช้ตัวเลือกการแสดงผลเพื่อจัดการวิธีการแสดงผลข้อมูลนั้น การตั้งค่าของ ValueRenderOption
ของ FORMULA
ระบุว่าระบบจะแสดงผลสูตรแทนค่าที่คํานวณ และการตั้งค่า DateTimeRenderOption
ของ SERIAL_NUMBER
บ่งชี้ว่าวันที่จะแสดงผลเป็นตัวเลข
ส่วนการตั้งค่าอื่นๆ ก็ใช้ได้เช่นกัน แถวและคอลัมน์ต่อท้ายที่ว่างเปล่า
โปรโตคอลคำขอจะแสดงที่นี่
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values/Sheet1!A1:D5? valueRenderOption=FORMULA&dateTimeRenderOption=SERIAL_NUMBER
คำตอบประกอบด้วยออบเจ็กต์ ValueRange
ที่อธิบายค่าของช่วง ช่อง majorDimension
จะระบุว่าอาร์เรย์เป็นรายการค่าที่จัดตามแถว
{ "range": "Sheet1!A1:D5", "majorDimension": "ROWS", "values": [ ["Item", "Cost", "Stocked", "Ship Date"], ["Wheel", "$20.50", "4", "42430"], ["Door", "$15", "2", "42444"], ["Engine", "$100", "1", "42449"], ["Totals", "=SUM(B2:B4)", "=SUM(C2:C4)", "=MAX(D2:D4)"] ], }
อ่านหลายช่วง
ตัวอย่างโค้ด spreadsheets.values.batchGet
ต่อไปนี้จะแสดงวิธีอ่านค่าจากช่วง Sheet1!B:B และ Sheet1!D:D และแสดงผลค่าเหล่านั้นในคำตอบ การตั้งค่า ValueRenderOption
ของ UNFORMATTED_VALUE
บ่งบอกว่ามีการคำนวณค่า แต่ไม่ได้จัดรูปแบบในการตอบกลับ แถวและคอลัมน์ต่อท้ายว่างเปล่า
โปรโตคอลคำขอจะแสดงที่นี่
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values:batchGet? ranges=Sheet1!B:B&ranges=Sheet1!D:D&valueRenderOption=UNFORMATTED_VALUE&majorDimension=COLUMNS
การตอบสนองต่อการเรียกใช้เมธอดนี้ประกอบด้วยออบเจ็กต์ที่มีรหัสสเปรดชีตและอาร์เรย์ของออบเจ็กต์ ValueRange
ที่สอดคล้องกับแต่ละช่วงที่ขอ โดยแสดงตามลำดับที่ขอ ช่อง majorDimension
จะระบุว่าอาร์เรย์เป็นรายการค่าที่จัดตามคอลัมน์ เช่น
{ "spreadsheetId": SPREADSHEET_ID, "valueRanges": [ { "range": "Sheet1!B1:B1000", "majorDimension": "COLUMNS", "values": [ ["Cost",20.5,15,100,135.5] ] }, { "range": "Sheet1!D1:D1000", "majorDimension": "COLUMNS", "values": [ ["Ship Date",42430,42444,42449,42449] ]s } ] }
อ่านหลายช่วงในชีตหลายรายการ
ตัวอย่างโค้ด
spreadsheets.values.batchGet
ต่อไปนี้แสดงวิธีอ่านค่าจากช่วงในชีต Sheet1!A1:D5,
Products!D1:D100 และ Sales!E4:F6 และแสดงผลค่าเหล่านั้นในคำตอบ การตั้งค่า ValueRenderOption
ของ UNFORMATTED_VALUE
บ่งบอกว่ามีการคำนวณค่า แต่ไม่ได้จัดรูปแบบในการตอบกลับ แถวและคอลัมน์ต่อท้ายว่างเปล่า
โปรโตคอลคำขอจะแสดงที่นี่
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/values:batchGet? ranges=Sheet1!A1:D5&ranges=Products!D1:D100&ranges=Sales!E4:F6&valueRenderOption=UNFORMATTED_VALUE&majorDimension=COLUMNS
การตอบสนองต่อการเรียกใช้เมธอดนี้ประกอบด้วยออบเจ็กต์ที่มีรหัสสเปรดชีตและอาร์เรย์ของออบเจ็กต์ ValueRange
ที่สอดคล้องกับแต่ละช่วงที่ขอ โดยแสดงตามลำดับที่ขอ ช่อง majorDimension
จะระบุว่าอาร์เรย์เป็นรายการค่าที่จัดตามคอลัมน์ เช่น
{ "spreadsheetId": SPREADSHEET_ID, "valueRanges": [ { "range": "Sheet1!A1:D5", "majorDimension": "COLUMNS", "values": [ [...], [...] ] }, { "range": "Products!D1:D100", "majorDimension": "COLUMNS", "values": [ [...] ] }, { "range": "Sales!E4:F6", "majorDimension": "COLUMNS", "values": [ [...], [...] ] } ] }