Class SpreadsheetApp

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

เข้าถึงและสร้างไฟล์ Google ชีต ชั้นเรียนนี้เป็นชั้นเรียนหลักสําหรับบริการสเปรดชีต

พร็อพเพอร์ตี้

พร็อพเพอร์ตี้ประเภทคำอธิบาย
AutoFillSeriesAutoFillSeriesการแจกแจงประเภทของชุดที่ใช้ในการคํานวณค่าที่กรอกโดยอัตโนมัติ
BandingThemeBandingThemeการแจกแจงธีมสีที่เป็นไปได้
BooleanCriteriaBooleanCriteriaการแจกแจงเกณฑ์บูลีนการจัดรูปแบบตามเงื่อนไข
BorderStyleBorderStyleการแจกแจงสไตล์ที่ถูกต้องในการตั้งค่าเส้นขอบบน Range
ColorTypeColorTypeการแจกแจงประเภทสีที่เป็นไปได้
CopyPasteTypeCopyPasteTypeการแจกแจงประเภทการวางที่เป็นไปได้
DataExecutionErrorCodeDataExecutionErrorCodeการแจกแจงรหัสข้อผิดพลาดที่อาจเกิดขึ้นกับการเรียกใช้ข้อมูล
DataExecutionStateDataExecutionStateการแจกแจงสถานะการประมวลผลข้อมูลที่เป็นไปได้
DataSourceParameterTypeDataSourceParameterTypeการแจกแจงประเภทพารามิเตอร์แหล่งข้อมูลที่เป็นไปได้
DataSourceRefreshScopeDataSourceRefreshScopeการแจกแจงขอบเขตการรีเฟรชแหล่งข้อมูลที่เป็นไปได้
DataSourceTypeDataSourceTypeการแจกแจงประเภทแหล่งข้อมูลที่เป็นไปได้
DataValidationCriteriaDataValidationCriteriaการแจกแจงการแจกแจงเกณฑ์การตรวจสอบข้อมูลที่ตั้งค่าได้ในช่วง
DateTimeGroupingRuleTypeDateTimeGroupingRuleTypeการแจกแจงกฎของการจัดกลุ่มวันที่และเวลา
DeveloperMetadataLocationTypeDeveloperMetadataLocationTypeการแจกแจงประเภทตําแหน่งข้อมูลเมตาของนักพัฒนาซอฟต์แวร์ที่เป็นไปได้
DeveloperMetadataVisibilityDeveloperMetadataVisibilityการแจกแจงความเป็นไปได้ของข้อมูลเมตาของนักพัฒนาซอฟต์แวร์
DimensionDimensionการแจกแจงมิติข้อมูลที่เป็นไปได้ของสเปรดชีต
DirectionDirectionการแจกแจงเส้นทางที่อาจเลื่อนไปภายในสเปรดชีตได้โดยใช้ปุ่มลูกศร
FrequencyTypeFrequencyTypeการแจกแจงประเภทความถี่ที่เป็นไปได้
GroupControlTogglePositionGroupControlTogglePositionการแจกแจงตําแหน่งของปุ่มสลับการควบคุมกลุ่มได้
InterpolationTypeInterpolationTypeการแจกแจงประเภทการประมาณการไล่ระดับสีแบบเงื่อนไขตามเงื่อนไข
PivotTableSummarizeFunctionPivotTableSummarizeFunctionการแจกแจงฟังก์ชันที่อาจใช้เพื่อสรุปค่าในตาราง Pivot
PivotValueDisplayTypePivotValueDisplayTypeการแจกแจงวิธีแสดงค่า Pivot
ProtectionTypeProtectionTypeการแจกแจงการแจกแจงส่วนของสเปรดชีตที่ป้องกันได้จากการแก้ไข
RecalculationIntervalRecalculationIntervalการแจกแจงช่วงที่เป็นไปได้ที่สามารถใช้คํานวณสเปรดชีตใหม่
RelativeDateRelativeDateการแจกแจงตัวเลือกวันที่สัมพัทธ์เพื่อคํานวณค่าที่จะใช้ใน BooleanCriteria แบบอิงตามวันที่
SheetTypeSheetTypeการแจกแจงชีตประเภทต่างๆ ที่อาจมีอยู่ในสเปรดชีต
SortOrderSortOrderการแจกแจงลําดับการจัดเรียง
TextDirectionTextDirectionการแจกแจงเส้นทางข้อความที่ถูกต้อง
TextToColumnsDelimiterTextToColumnsDelimiterการแจกแจงของค่าที่กําหนดล่วงหน้าสําหรับข้อความที่แบ่งเป็นหลายคอลัมน์
ThemeColorTypeThemeColorTypeการแจกแจงประเภทสีที่เป็นไปได้
ValueTypeValueTypeการแจกแจงประเภทค่าที่ Range.getValue() และ Range.getValues() แสดงผลจากคลาสช่วงของบริการสเปรดชีต ค่าการแจงนับต่อไปนี้เป็นเพิ่มเติมจาก Number, Boolean, Date หรือ String
WrapStrategyWrapStrategyการแจกแจงกลยุทธ์ที่ใช้ในการตัดเซลล์

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
create(name)Spreadsheetสร้างสเปรดชีตใหม่โดยใช้ชื่อที่ระบุ
create(name, rows, columns)Spreadsheetสร้างสเปรดชีตใหม่โดยใช้ชื่อที่ระบุและจํานวนแถวและคอลัมน์ที่ระบุ
enableAllDataSourcesExecution()voidเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลทุกประเภท
enableBigQueryExecution()voidเปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูล BigQuery
flush()voidใช้การเปลี่ยนแปลงสเปรดชีตที่รอดําเนินการทั้งหมด
getActive()Spreadsheetแสดงผลสเปรดชีตที่ใช้งานอยู่ในปัจจุบัน หรือ null หากไม่มี
getActiveRange()Rangeแสดงผลช่วงที่เลือกในชีตที่ใช้งานอยู่ หรือ null หากไม่มีช่วงที่ใช้งานอยู่
getActiveRangeList()RangeListแสดงผลรายการช่วงที่ใช้งานอยู่ในชีตที่ใช้งานอยู่หรือ null หากไม่มีช่วงที่เลือก
getActiveSheet()Sheetดาวน์โหลดชีตที่ใช้งานอยู่ในสเปรดชีต
getActiveSpreadsheet()Spreadsheetแสดงผลสเปรดชีตที่ใช้งานอยู่ในปัจจุบัน หรือ null หากไม่มี
getCurrentCell()Rangeแสดงผลเซลล์ปัจจุบัน (ที่ไฮไลต์) ที่เลือกในช่วงที่ใช้งานอยู่ในแผ่นงานที่ใช้งานอยู่ หรือ null ถ้าไม่มีเซลล์ปัจจุบัน
getSelection()Selectionแสดงผล Selection ปัจจุบันในสเปรดชีต
getUi()Uiแสดงผลสภาพแวดล้อมอินเทอร์เฟซผู้ใช้ของสเปรดชีตที่อนุญาตให้สคริปต์เพิ่มฟีเจอร์ต่างๆ เช่น เมนู กล่องโต้ตอบ และแถบด้านข้าง
newCellImage()CellImageBuilderสร้างเครื่องมือสร้างสําหรับ CellImage
newColor()ColorBuilderสร้างเครื่องมือสร้างสําหรับ Color
newConditionalFormatRule()ConditionalFormatRuleBuilderสร้างเครื่องมือสร้างสําหรับกฎการจัดรูปแบบตามเงื่อนไข
newDataSourceSpec()DataSourceSpecBuilderสร้างเครื่องมือสร้างสําหรับ DataSourceSpec
newDataValidation()DataValidationBuilderสร้างเครื่องมือสร้างสําหรับกฎการตรวจสอบข้อมูล
newFilterCriteria()FilterCriteriaBuilderสร้างเครื่องมือสร้างสําหรับ FilterCriteria
newRichTextValue()RichTextValueBuilderสร้างเครื่องมือสร้างสําหรับค่า Rich Text
newTextStyle()TextStyleBuilderสร้างเครื่องมือสร้างสําหรับรูปแบบข้อความ
open(file)Spreadsheetเปิดสเปรดชีตที่สอดคล้องกับออบเจ็กต์ไฟล์ที่ระบุ
openById(id)Spreadsheetเปิดสเปรดชีตด้วยรหัสที่กําหนด
openByUrl(url)Spreadsheetเปิดสเปรดชีตที่มี URL ที่ระบุ
setActiveRange(range)Rangeตั้งค่าช่วงที่ระบุเป็น active range โดยใช้เซลล์ด้านบนซ้ายในช่วงเป็น current cell
setActiveRangeList(rangeList)RangeListตั้งรายการช่วงที่ระบุเป็น active ranges
setActiveSheet(sheet)Sheetตั้งค่าชีตที่ใช้งานอยู่ในสเปรดชีต
setActiveSheet(sheet, restoreSelection)Sheetตั้งค่าแผ่นงานที่ใช้งานอยู่ในสเปรดชีต โดยมีตัวเลือกให้คืนค่าการเลือกล่าสุดภายในแผ่นงานนั้น
setActiveSpreadsheet(newActiveSpreadsheet)voidตั้งค่าสเปรดชีตที่ใช้งานอยู่
setCurrentCell(cell)Rangeตั้งค่าเซลล์ที่ระบุเป็น current cell

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

create(name)

สร้างสเปรดชีตใหม่โดยใช้ชื่อที่ระบุ

// The code below creates a new spreadsheet "Finances" and logs the URL for it
var ssNew = SpreadsheetApp.create("Finances");
Logger.log(ssNew.getUrl());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
nameStringชื่อสเปรดชีต

ไปกลับ

Spreadsheet — สเปรดชีตใหม่

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

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

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

create(name, rows, columns)

สร้างสเปรดชีตใหม่โดยใช้ชื่อที่ระบุและจํานวนแถวและคอลัมน์ที่ระบุ

// The code below creates a new spreadsheet "Finances" with 50 rows and 5 columns and logs the
// URL for it
var ssNew = SpreadsheetApp.create("Finances", 50, 5);
Logger.log(ssNew.getUrl());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
nameStringชื่อสเปรดชีต
rowsIntegerจํานวนแถวสําหรับสเปรดชีต
columnsIntegerจํานวนคอลัมน์สําหรับสเปรดชีต

ไปกลับ

Spreadsheet — สเปรดชีตใหม่

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

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

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

enableAllDataSourcesExecution()

เปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูลทุกประเภท

การดําเนินการกับข้อมูลจะมีข้อยกเว้นหากไม่ได้เปิดใช้ประเภทแหล่งข้อมูลนั้น ใช้วิธีการนี้เพื่อเปิดใช้การเรียกใช้ข้อมูลสําหรับแหล่งข้อมูลทุกประเภท

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

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

  • https://www.googleapis.com/auth/bigquery.readonly

enableBigQueryExecution()

เปิดใช้การประมวลผลข้อมูลสําหรับแหล่งข้อมูล BigQuery

การเรียกใช้ข้อมูลสําหรับแหล่งข้อมูล BigQuery จะแสดงข้อยกเว้นหากไม่ได้เปิดใช้

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

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

  • https://www.googleapis.com/auth/bigquery.readonly

flush()

ใช้การเปลี่ยนแปลงสเปรดชีตที่รอดําเนินการทั้งหมด

บางครั้งการดําเนินการของสเปรดชีตจะรวมอยู่ด้วยกันเพื่อปรับปรุงประสิทธิภาพ เช่น เมื่อเรียกใช้ Range.getValue() หลายครั้ง อย่างไรก็ตาม บางครั้งคุณอาจต้องการตรวจสอบว่าการเปลี่ยนแปลงที่รอดําเนินการทั้งหมดเกิดขึ้นทันที เช่น เพื่อแสดงข้อมูลผู้ใช้เป็นสคริปต์

// The code below changes the background color of cells A1 and B1 twenty times. You should be
// able to see the updates live in the spreadsheet. If flush() is not called, the updates may
// be applied live or may all be applied at once when the script completes.
function colors() {
  var sheet = SpreadsheetApp.getActiveSheet();
  for (var i = 0; i < 20; i++) {
    if ((i % 2) == 0) {
      sheet.getRange('A1').setBackground('green');
      sheet.getRange('B1').setBackground('red');
    } else {
      sheet.getRange('A1').setBackground('red');
      sheet.getRange('B1').setBackground('green');
    }
    SpreadsheetApp.flush();
  }
}

getActive()

แสดงผลสเปรดชีตที่ใช้งานอยู่ในปัจจุบัน หรือ null หากไม่มี

ฟังก์ชันที่เรียกใช้ในบริบทของสเปรดชีตจะอ้างอิงออบเจ็กต์สเปรดชีตที่เกี่ยวข้องได้ด้วยการเรียกใช้ฟังก์ชันนี้

// The code below logs the URL for the active spreadsheet.
Logger.log(SpreadsheetApp.getActive().getUrl());

ไปกลับ

Spreadsheet — ออบเจ็กต์สเปรดชีตที่ใช้งานอยู่

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

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

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

getActiveRange()

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

ซึ่งโดยทั่วไปจะหมายถึงช่วงที่ผู้ใช้เลือกในชีตที่ใช้งานอยู่ แต่ในฟังก์ชันที่กําหนดเอง จะหมายถึงเซลล์ที่มีการคํานวณใหม่โดยตั้งใจ

// The code below logs the background color for the active range.
var colorObject = SpreadsheetApp.getActiveRange().getBackgroundObject();
// Assume the color has ColorType.RGB.
Logger.log(colorObject.asRgbColor().asHexString());

ไปกลับ

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

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

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

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

getActiveRangeList()

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

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

// Returns the list of active ranges.
var rangeList = SpreadsheetApp.getActiveRangeList();

ไปกลับ

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

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

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

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

getActiveSheet()

ดาวน์โหลดชีตที่ใช้งานอยู่ในสเปรดชีต

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

// The code below logs the name of the active sheet.
Logger.log(SpreadsheetApp.getActiveSheet().getName());

ไปกลับ

Sheet — ออบเจ็กต์ชีตที่ใช้งานอยู่

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

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

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

getActiveSpreadsheet()

แสดงผลสเปรดชีตที่ใช้งานอยู่ในปัจจุบัน หรือ null หากไม่มี

ฟังก์ชันที่เรียกใช้ในบริบทของสเปรดชีตจะอ้างอิงออบเจ็กต์ Spreadsheet ที่เกี่ยวข้องได้โดยการเรียกใช้ฟังก์ชันนี้

// The code below logs the URL for the active spreadsheet.
Logger.log(SpreadsheetApp.getActiveSpreadsheet().getUrl());

ไปกลับ

Spreadsheet — ออบเจ็กต์สเปรดชีตที่ใช้งานอยู่

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

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

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

getCurrentCell()

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

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

ไปกลับ

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

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

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

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

getSelection()

แสดงผล Selection ปัจจุบันในสเปรดชีต

var selection = SpreadsheetApp.getSelection();
var currentCell = selection.getCurrentCell();

ไปกลับ

Selection — ตัวเลือกปัจจุบัน

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

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

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

getUi()

แสดงผลสภาพแวดล้อมอินเทอร์เฟซผู้ใช้ของสเปรดชีตที่อนุญาตให้สคริปต์เพิ่มฟีเจอร์ต่างๆ เช่น เมนู กล่องโต้ตอบ และแถบด้านข้าง สคริปต์จะโต้ตอบกับ UI สําหรับอินสแตนซ์ปัจจุบันของสเปรดชีตที่เปิดอยู่เท่านั้น และเฉพาะในกรณีที่สคริปต์เชื่อมโยงกับสเปรดชีตเท่านั้น สําหรับข้อมูลเพิ่มเติม โปรดดูคําแนะนําเกี่ยวกับเมนูและกล่องโต้ตอบและแถบด้านข้าง

// Add a custom menu to the active spreadsheet, including a separator and a sub-menu.
function onOpen(e) {
  SpreadsheetApp.getUi()
      .createMenu('My Menu')
      .addItem('My menu item', 'myFunction')
      .addSeparator()
      .addSubMenu(SpreadsheetApp.getUi().createMenu('My sub-menu')
          .addItem('One sub-menu item', 'mySecondFunction')
          .addItem('Another sub-menu item', 'myThirdFunction'))
      .addToUi();
}

ไปกลับ

Ui — อินสแตนซ์ของอินเทอร์เฟซผู้ใช้ของสเปรดชีตนี้


newCellImage()

สร้างเครื่องมือสร้างสําหรับ CellImage

ไปกลับ

CellImageBuilder — เครื่องมือสร้างใหม่


newColor()

สร้างเครื่องมือสร้างสําหรับ Color

var rgbColor = SpreadsheetApp.newColor().setRgbColor("#FF0000").build();

ไปกลับ

ColorBuilder — เครื่องมือสร้างใหม่


newConditionalFormatRule()

สร้างเครื่องมือสร้างสําหรับกฎการจัดรูปแบบตามเงื่อนไข

// Adds a conditional format rule to a sheet that causes all cells in range A1:B3 to turn red
// if they contain a number between 1 and 10.
var sheet = SpreadsheetApp.getActive().getActiveSheet();
var range = sheet.getRange('A1:B3');
var rule = SpreadsheetApp.newConditionalFormatRule()
    .whenNumberBetween(1, 10)
    .setBackground("#FF0000")
    .setRanges([range])
    .build()
var rules = sheet.getConditionalFormatRules();
rules.push(rule);
sheet.setConditionalFormatRules(rules);

ไปกลับ

ConditionalFormatRuleBuilder — เครื่องมือสร้างใหม่


newDataSourceSpec()

สร้างเครื่องมือสร้างสําหรับ DataSourceSpec

ไปกลับ

DataSourceSpecBuilder — เครื่องมือสร้างใหม่


newDataValidation()

สร้างเครื่องมือสร้างสําหรับกฎการตรวจสอบข้อมูล

var cell = SpreadsheetApp.getActive().getRange('A1');
var rule = SpreadsheetApp.newDataValidation()
    .requireNumberBetween(1, 100)
    .setAllowInvalid(false)
    .setHelpText('Number must be between 1 and 100.')
    .build();
cell.setDataValidation(rule);

ไปกลับ

DataValidationBuilder — เครื่องมือสร้างใหม่


newFilterCriteria()

สร้างเครื่องมือสร้างสําหรับ FilterCriteria

ไปกลับ

FilterCriteriaBuilder — เครื่องมือสร้างใหม่


newRichTextValue()

สร้างเครื่องมือสร้างสําหรับค่า Rich Text

// Sets cell A1 to have the text "Hello world", with "Hello" bolded.
var cell = SpreadsheetApp.getActive().getRange('A1');
var bold = SpreadsheetApp.newTextStyle().setBold(true).build();
var value = SpreadsheetApp.newRichTextValue()
    .setText("Hello world")
    .setTextStyle(0, 5, bold)
    .build();
cell.setRichTextValue(value);

ไปกลับ

RichTextValueBuilder — เครื่องมือสร้างใหม่


newTextStyle()

สร้างเครื่องมือสร้างสําหรับรูปแบบข้อความ

// Sets range A1:B3 to have red, size 22, bolded, underlined text.
var range = SpreadsheetApp.getActive().getRange('A1:B3');
var style = SpreadsheetApp.newTextStyle()
    .setForegroundColor("red")
    .setFontSize(22)
    .setBold(true)
    .setUnderline(true)
    .build();
range.setTextStyle(style);

ไปกลับ

TextStyleBuilder — เครื่องมือสร้างใหม่


open(file)

เปิดสเปรดชีตที่สอดคล้องกับออบเจ็กต์ไฟล์ที่ระบุ

// Get any starred spreadsheets from Google Drive, then open the spreadsheets and log the name
// of the first sheet within each spreadsheet.
var files = DriveApp.searchFiles(
    'starred = true and mimeType = "' + MimeType.GOOGLE_SHEETS + '"');
while (files.hasNext()) {
  var spreadsheet = SpreadsheetApp.open(files.next());
  var sheet = spreadsheet.getSheets()[0];
  Logger.log(sheet.getName());
}

พารามิเตอร์

ชื่อประเภทคำอธิบาย
fileFileไฟล์เพื่อเปิด

ไปกลับ

Spreadsheet — สเปรดชีต

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

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

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

openById(id)

เปิดสเปรดชีตด้วยรหัสที่กําหนด โดยจะดึงรหัสสเปรดชีตจาก URL ได้ เช่น รหัสสเปรดชีตใน URL https://docs.google.com/spreadsheets/d/abc1234567/edit#gid=0 คือ "abc1234567"

// The code below opens a spreadsheet using its ID and logs the name for it.
// Note that the spreadsheet is NOT physically opened on the client side.
// It is opened on the server only (for modification by the script).
var ss = SpreadsheetApp.openById("abc1234567");
Logger.log(ss.getName());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
idStringตัวระบุที่ไม่ซ้ํากันสําหรับสเปรดชีต

ไปกลับ

Spreadsheet — ออบเจ็กต์สเปรดชีตที่มีรหัสที่ระบุ

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

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

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

openByUrl(url)

เปิดสเปรดชีตที่มี URL ที่ระบุ ส่งสคริปต์ที่ได้รับการยกเว้นหาก URL นั้นไม่มีอยู่หรือผู้ใช้ไม่มีสิทธิ์เข้าถึง

// The code below opens a spreadsheet using its id and logs the name for it.
// Note that the spreadsheet is NOT physically opened on the client side.
// It is opened on the server only (for modification by the script).
var ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc1234567/edit');
Logger.log(ss.getName());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
urlStringURL ของสเปรดชีต

ไปกลับ

Spreadsheet — ออบเจ็กต์สเปรดชีตที่มีรหัสที่ระบุ

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

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

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

setActiveRange(range)

ตั้งค่าช่วงที่ระบุเป็น active range โดยใช้เซลล์ด้านบนซ้ายในช่วงเป็น current cell

UI ของสเปรดชีตแสดงแผ่นงานที่มีช่วงที่เลือกและเลือกเซลล์ที่กําหนดไว้ในช่วงที่เลือก

// The code below sets range C1:D4 in the first sheet as the active range.
var range = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0].getRange('C1:D4');
SpreadsheetApp.setActiveRange(range);

var selection = SpreadsheetApp.getSelection();
// Current cell: C1
var currentCell = selection.getCurrentCell();
// Active Range: C1:D4
var activeRange = selection.getActiveRange();

พารามิเตอร์

ชื่อประเภทคำอธิบาย
rangeRangeช่วงที่จะกําหนดให้เป็นช่วงที่ใช้งานอยู่

ไปกลับ

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


setActiveRangeList(rangeList)

ตั้งรายการช่วงที่ระบุเป็น active ranges ช่วงสุดท้ายในรายการตั้งค่าเป็น active range

// The code below sets ranges [D4, B2:C4] in the active sheet as the active ranges.
var rangeList = SpreadsheetApp.getActiveSheet().getRanges(['D4', 'B2:C4']);
SpreadsheetApp.setActiveRangeList(rangeList);

var selection = SpreadsheetApp.getSelection();
// Current cell: B2
var currentCell = selection.getCurrentCell();
// Active range: B2:C4
var activeRange = selection.getActiveRange();
// Active range list: [D4, B2:C4]
var activeRangeList = selection.getActiveRangeList();

พารามิเตอร์

ชื่อประเภทคำอธิบาย
rangeListRangeListรายการช่วงให้เลือก

ไปกลับ

RangeList — รายการช่วงที่เลือกไว้ใหม่

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

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

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

setActiveSheet(sheet)

ตั้งค่าชีตที่ใช้งานอยู่ในสเปรดชีต UI ของ Google ชีตจะแสดงชีตที่เลือกไว้ เว้นแต่ชีตจะอยู่ในสเปรดชีตอื่น

// The code below makes the 2nd sheet active in the active spreadsheet.
var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
SpreadsheetApp.setActiveSheet(spreadsheet.getSheets()[1]);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
sheetSheetชีตใหม่ที่ใช้งานอยู่

ไปกลับ

Sheet — แผ่นงานที่เป็นแผ่นงานใหม่ที่ใช้งานอยู่


setActiveSheet(sheet, restoreSelection)

ตั้งค่าแผ่นงานที่ใช้งานอยู่ในสเปรดชีต โดยมีตัวเลือกให้คืนค่าการเลือกล่าสุดภายในแผ่นงานนั้น UI ของ Google ชีตจะแสดงชีตที่เลือกไว้ เว้นแต่ชีตจะอยู่ในสเปรดชีตอื่น

var spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
var firstSheet = spreadsheet.getSheets()[0];
var secondSheet = spreadsheet.getSheets()[1];
// Set the first sheet as the active sheet and select the range D4:F4.
spreadsheet.setActiveSheet(firstSheet).getRange('D4:F4').activate();

// Switch to the second sheet to do some work.
spreadsheet.setActiveSheet(secondSheet);
// Switch back to first sheet, and restore its selection.
spreadsheet.setActiveSheet(firstSheet, true);

// The selection of first sheet is restored, and it logs D4:F4
var range = spreadsheet.getActiveSheet().getSelection().getActiveRange();
Logger.log(range.getA1Notation());

พารามิเตอร์

ชื่อประเภทคำอธิบาย
sheetSheetชีตใหม่ที่ใช้งานอยู่
restoreSelectionBooleanหากเลือก true ระบบจะเลือกแผ่นงานใหม่ที่ใช้งานล่าสุดอีกครั้งเมื่อชีตใหม่เริ่มทํางาน หาก false แผ่นงานใหม่จะทํางานโดยไม่เปลี่ยนการเลือกปัจจุบัน

ไปกลับ

Sheet — ชีตที่ใช้งานอยู่ใหม่

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

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

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

setActiveSpreadsheet(newActiveSpreadsheet)

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

// The code below makes the spreadsheet with key "1234567890" the active spreadsheet
var ss = SpreadsheetApp.openById("1234567890");
SpreadsheetApp.setActiveSpreadsheet(ss);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
newActiveSpreadsheetSpreadsheetสเปรดชีตที่จะใช้เป็นสเปรดชีตที่ใช้งานอยู่

setCurrentCell(cell)

ตั้งค่าเซลล์ที่ระบุเป็น current cell

หากมีเซลล์ที่ระบุอยู่ในช่วงที่เลือกแล้ว ช่วงนั้นจะเป็นช่วงที่มีการใช้งานกับเซลล์เป็นเซลล์ปัจจุบัน

หากไม่พบเซลล์ที่ระบุในช่วงที่เลือก ระบบจะนําการเลือกที่มีอยู่ออกและเซลล์จะกลายเป็นเซลล์ปัจจุบันและช่วงที่มีการใช้งาน

หมายเหตุ: Range ที่ระบุต้องประกอบด้วยเซลล์เดียว มิฉะนั้นจะส่งข้อยกเว้น

// The code below sets the cell B5 in the first sheet as the current cell.
var cell = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0].getRange('B5');
SpreadsheetApp.setCurrentCell(cell);

var selection = SpreadsheetApp.getSelection();
// Current cell: B5
var currentCell = selection.getCurrentCell();

พารามิเตอร์

ชื่อประเภทคำอธิบาย
cellRangeเซลล์ที่จะตั้งค่าเป็นเซลล์ปัจจุบัน

ไปกลับ

Range — เซลล์ปัจจุบันที่กําหนดใหม่

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

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

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