Class Selection

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
การเลือก

เข้าถึงการเลือกที่ใช้งานอยู่ในปัจจุบันในชีตที่ใช้งานอยู่ รายการที่เลือกคือชุดของเซลล์ที่ผู้ใช้ไฮไลต์ไว้ในแผ่นงาน ซึ่งอาจเป็นช่วงที่ไม่ติดกัน เซลล์หนึ่งในรายการที่เลือกคือเซลล์ปัจจุบัน ซึ่งจุดโฟกัสปัจจุบันของผู้ใช้คือเซลล์ปัจจุบันที่ไฮไลต์เส้นขอบสีเข้มใน UI ของ Google ชีต

var activeSheet = SpreadsheetApp.getActiveSheet();
var rangeList = activeSheet.getRangeList(['A1:B4', 'D1:E4']);
rangeList.activate();

var selection = activeSheet.getSelection();
// Current Cell: D1
Logger.log('Current Cell: ' + selection.getCurrentCell().getA1Notation());
// Active Range: D1:E4
Logger.log('Active Range: ' + selection.getActiveRange().getA1Notation());
// Active Ranges: A1:B4, D1:E4
var ranges =  selection.getActiveRangeList().getRanges();
for (var i = 0; i < ranges.length; i++) {
  Logger.log('Active Ranges: ' + ranges[i].getA1Notation());
}
Logger.log('Active Sheet: ' + selection.getActiveSheet().getName());

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
getActiveRange()Rangeแสดงผลช่วงที่เลือกในชีตที่ใช้งานอยู่ หรือ null หากไม่มีช่วงที่ใช้งานอยู่
getActiveRangeList()RangeListแสดงผลรายการช่วงที่มีการใช้งานในชีตที่ใช้งานอยู่หรือ null หากไม่มีช่วงที่ทํางานอยู่
getActiveSheet()Sheetแสดงผลแผ่นงานที่ใช้งานอยู่ในสเปรดชีต
getCurrentCell()Rangeแสดงผลเซลล์ปัจจุบัน (ที่ไฮไลต์ไว้) ที่เลือกในช่วงใดช่วงหนึ่งที่ใช้งานอยู่หรือ null ถ้าไม่มีเซลล์ปัจจุบัน
getNextDataRange(direction)Rangeเริ่มจาก current cell และ active range และเคลื่อนที่ในทิศทางที่ระบุ ฟังก์ชันจะแสดงช่วงที่ปรับแล้วซึ่งมีการปรับขอบที่เหมาะสมของช่วงเพื่อให้ครอบคลุม next data cell ในขณะที่ยังครอบคลุมเซลล์ปัจจุบัน

เอกสารประกอบโดยละเอียด

getActiveRange()

แสดงผลช่วงที่เลือกในชีตที่ใช้งานอยู่ หรือ null หากไม่มีช่วงที่ใช้งานอยู่ หากเลือกหลายช่วง วิธีนี้จะแสดงเฉพาะช่วงสุดท้ายที่เลือกไว้เท่านั้น

var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
var activeRange = selection.getActiveRange();

ไปกลับ

Range — ช่วงที่ใช้งานอยู่

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getActiveRangeList()

แสดงผลรายการช่วงที่มีการใช้งานในชีตที่ใช้งานอยู่หรือ null หากไม่มีช่วงที่ทํางานอยู่

หากเลือกช่วงเดียว การดําเนินการนี้จะทําหน้าที่เป็นการเรียก getActiveRange()

var sheet = SpreadsheetApp.getActiveSheet();
// Returns the list of active ranges.
var activeRangeList = sheet.getActiveRangeList();

ไปกลับ

RangeList — รายการช่วงที่มีการใช้งาน

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getActiveSheet()

แสดงผลแผ่นงานที่ใช้งานอยู่ในสเปรดชีต

var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
var activeSheet = selection.getActiveSheet();

ไปกลับ

Sheet — ชีตที่ใช้งานอยู่ในสเปรดชีต

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getCurrentCell()

แสดงผลเซลล์ปัจจุบัน (ที่ไฮไลต์ไว้) ที่เลือกในช่วงใดช่วงหนึ่งที่ใช้งานอยู่หรือ null ถ้าไม่มีเซลล์ปัจจุบัน

var selection = SpreadsheetApp.getActiveSpreadsheet().getSelection();
// Returns the current highlighted cell in the one of the active ranges.
var currentCell = selection.getCurrentCell();

ไปกลับ

Range — เซลล์ปัจจุบัน

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets

getNextDataRange(direction)

เริ่มจาก current cell และ active range และเคลื่อนที่ในทิศทางที่ระบุ ฟังก์ชันจะแสดงช่วงที่ปรับแล้วซึ่งมีการปรับขอบที่เหมาะสมของช่วงเพื่อให้ครอบคลุม next data cell ในขณะที่ยังครอบคลุมเซลล์ปัจจุบัน หากช่วงที่ใช้งานอยู่ไม่มีขอบเขตตาม dimension ของทิศทาง ระบบจะแสดงผลช่วงที่ใช้งานอยู่เดิม หากไม่มีเซลล์หรือช่วงที่ใช้งานอยู่ ระบบจะแสดงผล null ซึ่งเท่ากับการเลือกช่วงในตัวแก้ไขแล้วกดปุ่ม Ctrl+Shift+[arrow key]

// Assume the active spreadsheet is blank.
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];

// Makes C3 the current cell and C3:E5 the active range.
sheet.getRange("C3:E5").activate();
// Logs "C1:E3"
Logger.log(SpreadsheetApp.getSelection().getNextDataRange(Direction.UP).getA1Notation());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
directionDirectionทิศทางที่จะค้นหาเซลล์ขอบถัดไปของเขตข้อมูล

ไปกลับ

Range — ช่วงที่ปรับเปลี่ยนซึ่งมีเซลล์ข้อมูล หรือ null หากไม่มีการเลือก

การให้สิทธิ์

สคริปต์ที่ใช้วิธีนี้ต้องได้รับสิทธิ์กับขอบเขตต่อไปนี้อย่างน้อย 1 รายการ

  • https://www.googleapis.com/auth/spreadsheets.currentonly
  • https://www.googleapis.com/auth/spreadsheets