Class SpreadsheetApp

تطبيق "جدول بيانات Google"

الوصول إلى ملفات "جداول بيانات Google" وإنشاؤها هذه الفئة هي الفئة الرئيسية لخدمة "جداول بيانات Google".

أماكن إقامة

الموقعالنوعالوصف
AutoFillSeriesAutoFillSeriesقائمة بأنواع السلاسل المستخدَمة لاحتساب القيم التي تتم تعبئتها تلقائيًا
BandingThemeBandingThemeقائمة بالمواضيع المحتمَلة للشرائح
BooleanCriteriaBooleanCriteriaقائمة بمعايير التنسيق الشرطي المنطقية
BorderStyleBorderStyleقائمة بالأنماط الصالحة لضبط الحدود على Range
ColorTypeColorTypeقائمة بأنواع الألوان المحتملة
CopyPasteTypeCopyPasteTypeقائمة بأنواع اللصق المحتملة
DataExecutionErrorCodeDataExecutionErrorCodeقائمة برموز خطأ تنفيذ البيانات المحتملة
DataExecutionStateDataExecutionStateقائمة بحالات تنفيذ البيانات المحتملة
DataSourceParameterTypeDataSourceParameterTypeقائمة بعدد أنواع مَعلمات مصدر البيانات المحتملة
DataSourceRefreshScopeDataSourceRefreshScopeقائمة بمجالات إعادة تحميل مصدر البيانات المحتملة
DataSourceTypeDataSourceTypeقائمة بأنواع مصادر البيانات المحتملة
DataValidationCriteriaDataValidationCriteriaتعداد يمثّل معايير التحقّق من صحة البيانات التي يمكن ضبطها على نطاق
DateTimeGroupingRuleTypeDateTimeGroupingRuleTypeتعداد لقاعدة تجميع التاريخ والوقت
DeveloperMetadataLocationTypeDeveloperMetadataLocationTypeقائمة بأنواع المواقع الجغرافية المحتملة للبيانات الوصفية للمطوّر
DeveloperMetadataVisibilityDeveloperMetadataVisibilityقائمة بمستويات ظهور البيانات الوصفية للمطوّر المحتملة
DimensionDimensionقائمة بالسمات المحتمَلة لجدول البيانات
DirectionDirectionقائمة بالاتجاهات المحتملة التي يمكن للمرء التنقّل فيها داخل جدول بيانات باستخدام مفاتيح السهم
FrequencyTypeFrequencyTypeقائمة بأنواع معدّلات التكرار المحتمَلة
GroupControlTogglePositionGroupControlTogglePositionقائمة بمواقف تبديل التحكّم في المجموعة
InterpolationTypeInterpolationTypeقائمة بأنواع الاستقراء المتدرج للتنسيق الشرطي
PivotTableSummarizeFunctionPivotTableSummarizeFunctionقائمة بالدوالّ التي يمكن استخدامها لتلخيص القيم في جدول محوري
PivotValueDisplayTypePivotValueDisplayTypeقائمة بطرق عرض القيمة المحورية
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
enableLookerExecution()voidتفعِّل هذه السمة تنفيذ البيانات لمصادر بيانات Looker.
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لإنشاء أداة إنشاء لقيمة نص منسق
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
const ssNew = SpreadsheetApp.create('Finances');
Logger.log(ssNew.getUrl());

المعلمات

الاسمالنوعالوصف
nameStringاسم جدول البيانات

الإرجاع

Spreadsheet - جدول بيانات جديد

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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
const ssNew = SpreadsheetApp.create('Finances', 50, 5);
Logger.log(ssNew.getUrl());

المعلمات

الاسمالنوعالوصف
nameStringاسم جدول البيانات
rowsIntegerعدد صفوف جدول البيانات
columnsIntegerعدد أعمدة جدول البيانات

الإرجاع

Spreadsheet - جدول بيانات جديد

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

enableAllDataSourcesExecution()

تفعِّل هذه القيمة تنفيذ البيانات لجميع أنواع مصادر البيانات.

يُرسِل تنفيذ البيانات استثناءً إذا لم يكن نوع مصدر البيانات مفعّلاً. استخدِم هذه الطريقة لتفعيل تنفيذ البيانات لجميع أنواع مصادر البيانات.

// Turns data execution on for all types of data sources.
SpreadsheetApp.enableAllDataSourcesExecution();

// Opens the spreadsheet file by its ID. If you created your script from a
// Google Sheets file, use SpreadsheetApp.getActiveSpreadsheet().
// TODO(developer): Replace the ID with your own.
const ss = SpreadsheetApp.openById('abc123456');

// Gets the first data source sheet in the spreadsheet and refreshes the data.
ss.getDataSourceSheets()[0].refreshData();

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

enableBigQueryExecution()

تفعيل تنفيذ البيانات لمصادر بيانات BigQuery

يؤدي تنفيذ البيانات لمصدر بيانات BigQuery إلى طرح استثناء في حال عدم تفعيله.

// Turns data execution on for BigQuery data sources.
SpreadsheetApp.enableBigQueryExecution();

// Opens the spreadsheet file by its ID. If you created your script from a
// Google Sheets file, use SpreadsheetApp.getActiveSpreadsheet().
// TODO(developer): Replace the ID with your own.
const ss = SpreadsheetApp.openById('abc123456');

// Gets the first data source sheet in the spreadsheet and refreshes the
// BigQuery data.
ss.getDataSourceSheets()[0].refreshData();

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

enableLookerExecution()

تفعِّل هذه السمة تنفيذ البيانات لمصادر بيانات Looker.

يؤدي تنفيذ البيانات لمصدر بيانات Looker إلى طرح استثناء في حال عدم تفعيله.

// Turns data execution on for Looker data sources.
SpreadsheetApp.enableLookerExecution();

// Opens the spreadsheet file by its ID. If you created your script from a
// Google Sheets file, use SpreadsheetApp.getActiveSpreadsheet().
// TODO(developer): Replace the ID with your own.
const ss = SpreadsheetApp.openById('abc123456');

// Gets the first data source sheet in the spreadsheet and refreshes the
// associated Looker data.
ss.getDataSourceSheets()[0].refreshData();

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() {
  const sheet = SpreadsheetApp.getActiveSheet();
  for (let 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: عنصر جدول البيانات النشط

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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.
const colorObject = SpreadsheetApp.getActiveRange().getBackgroundObject();
// Assume the color has ColorType.RGB.
Logger.log(colorObject.asRgbColor().asHexString());

الإرجاع

Range: النطاق النشط

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

getActiveRangeList()

عرض قائمة النطاقات النشطة في الورقة النشطة أو null إذا لم يكن هناك نطاقات محدّدة يتم وضع النطاق النشط الذي يحتوي على الخلية المميّزة حاليًا في آخر القائمة.

إذا تم اختيار نطاق واحد، سيعمل هذا النطاق كطلب getActiveRange().

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

الإرجاع

RangeList - قائمة النطاقات النشطة

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

getActiveSheet()

تحصل على الورقة النشطة في جدول بيانات.

الورقة النشطة في جدول البيانات هي الورقة التي يتم عرضها في واجهة مستخدم جدول البيانات.

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

الإرجاع

Sheet: عنصر "ورقة البيانات" النشط

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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: عنصر جدول البيانات النشط

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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.
const currentCell = SpreadsheetApp.getCurrentCell();

الإرجاع

Range: الخلية الحالية

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

getSelection()

لعرض Selection الحالي في جدول البيانات.

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

الإرجاع

Selection: العنصر المحدّد حاليًا

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

getUi()

عرض مثيل لواجهة مستخدم جدول البيانات الذي يسمح للنص البرمجي بإضافة ميزات مثل القوائم وملفات الحوار والأشرطة الجانبية لا يمكن للنص البرمجي التفاعل مع واجهة المستخدم إلا في المثيل الحالي لجدول بيانات مفتوح، وذلك فقط إذا كان النص البرمجي مرتبطًا بجدول البيانات. لمزيد من المعلومات، اطّلِع على أدلة قوائم الطعام ومربّعات الحوار والأشرطة الجانبية.

// 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

// Opens the spreadsheet file by its URL. If you created your script from within
// a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet()
// instead.
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

// Gets Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Gets cell A1 on Sheet1.
const range = sheet.getRange('A1');

// Builds an image using a source URL.
const cellImage =
    SpreadsheetApp.newCellImage()
        .setSourceUrl(
            'https://www.gstatic.com/images/branding/productlogos/apps_script/v10/web-64dp/logo_apps_script_color_1x_web_64dp.png',
            )
        .build();

// Sets the image in cell A1.
range.setValue(cellImage);

الإرجاع

CellImageBuilder - أداة الإنشاء الجديدة


newColor()

لإنشاء أداة إنشاء Color

const 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.
const sheet = SpreadsheetApp.getActive().getActiveSheet();
const range = sheet.getRange('A1:B3');
const rule = SpreadsheetApp.newConditionalFormatRule()
                 .whenNumberBetween(1, 10)
                 .setBackground('#FF0000')
                 .setRanges([range])
                 .build();
const rules = sheet.getConditionalFormatRules();
rules.push(rule);
sheet.setConditionalFormatRules(rules);

الإرجاع

ConditionalFormatRuleBuilder - أداة الإنشاء الجديدة


newDataSourceSpec()

لإنشاء أداة إنشاء DataSourceSpec

// Opens the spreadsheet file by its URL. If you created your script from within
// a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet()
// instead.
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

// Enables BigQuery.
SpreadsheetApp.enableBigQueryExecution();

// Builds a data source specification.
// TODO (developer): Update the project ID to your own Google Cloud project ID.
const dataSourceSpec = SpreadsheetApp.newDataSourceSpec()
                           .asBigQuery()
                           .setProjectId('project-id-1')
                           .setTableProjectId('bigquery-public-data')
                           .setDatasetId('ncaa_basketball')
                           .setTableId('mbb_historical_teams_games')
                           .build();

// Adds the data source and its data to the spreadsheet.
ss.insertDataSourceSheet(dataSourceSpec);

الإرجاع

DataSourceSpecBuilder - أداة الإنشاء الجديدة


newDataValidation()

تُنشئ أداة لإنشاء قاعدة التحقّق من البيانات.

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

الإرجاع

DataValidationBuilder - أداة الإنشاء الجديدة


newFilterCriteria()

لإنشاء أداة إنشاء FilterCriteria

// Opens the spreadsheet file by its URL. If you created your script from within
// a Google Sheets file, you can use SpreadsheetApp.getActiveSpreadsheet()
// instead.
// TODO(developer): Replace the URL with your own.
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc123456/edit',
);

// Gets Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Sets the range to A1:D20.
const range = sheet.getRange('A1:D20');

// Creates a filter and applies it to the specified range.
range.createFilter();

// Gets the current filter for the range and creates filter criteria that only
// shows cells that aren't empty.
const filter = range.getFilter();
const criteria = SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build();

// Sets the criteria to  column C.
filter.setColumnFilterCriteria(3, criteria);

الإرجاع

FilterCriteriaBuilder - أداة التصميم الجديدة


newRichTextValue()

لإنشاء أداة إنشاء لقيمة نص منسق

// Sets cell A1 to have the text "Hello world", with "Hello" bolded.
const cell = SpreadsheetApp.getActive().getRange('A1');
const bold = SpreadsheetApp.newTextStyle().setBold(true).build();
const 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.
const range = SpreadsheetApp.getActive().getRange('A1:B3');
const 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.
const files = DriveApp.searchFiles(
    `starred = true and mimeType = "${MimeType.GOOGLE_SHEETS}"`,
);
while (files.hasNext()) {
  const spreadsheet = SpreadsheetApp.open(files.next());
  const sheet = spreadsheet.getSheets()[0];
  Logger.log(sheet.getName());
}

المعلمات

الاسمالنوعالوصف
fileFileالملف المطلوب فتحه

الإرجاع

Spreadsheet - جدول البيانات

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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).
const ss = SpreadsheetApp.openById('abc1234567');
Logger.log(ss.getName());

المعلمات

الاسمالنوعالوصف
idStringالمعرّف الفريد لجدول البيانات

الإرجاع

Spreadsheet - عنصر جدول البيانات الذي يحمل المعرّف المحدّد

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

openByUrl(url)

فتح جدول البيانات باستخدام عنوان URL المحدَّد يُرسِل استثناءً للنص البرمجي إذا لم يكن عنوان URL متوفّرًا أو إذا لم يكن لدى المستخدم إذن بالوصول إليه.

// Opens a spreadsheet by its URL and logs its name.
// Note that the spreadsheet doesn't physically open on the client side.
// It opens on the server only (for modification by the script).
const ss = SpreadsheetApp.openByUrl(
    'https://docs.google.com/spreadsheets/d/abc1234567/edit',
);
console.log(ss.getName());

المعلمات

الاسمالنوعالوصف
urlStringعنوان URL لجدول البيانات.

الإرجاع

Spreadsheet: عنصر جدول البيانات الذي يتضمّن عنوان URL المحدّد

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

setActiveRange(range)

تُستخدَم لضبط النطاق المحدّد على أنّه active range، مع استخدام الخلية العلوية اليسار في النطاق على أنّها current cell.

تعرِض واجهة مستخدم جدول البيانات ورقة البيانات التي تحتوي على النطاق المحدّد وتختار الخلايا المحدّدة في النطاق المحدّد.

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

const selection = SpreadsheetApp.getSelection();
// Current cell: C1
const currentCell = selection.getCurrentCell();
// Active Range: C1:D4
const 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.
const rangeList = SpreadsheetApp.getActiveSheet().getRanges(['D4', 'B2:C4']);
SpreadsheetApp.setActiveRangeList(rangeList);

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

المعلمات

الاسمالنوعالوصف
rangeListRangeListقائمة النطاقات التي سيتم اختيارها

الإرجاع

RangeList: قائمة النطاقات التي تم اختيارها حديثًا

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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

setActiveSheet(sheet)

تُستخدَم لضبط الورقة النشطة في جدول بيانات. تعرِض واجهة مستخدم "جداول بيانات Google" الورقة المحدّدة ما لم تكن الورقة تنتمي إلى جدول بيانات مختلف.

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

المعلمات

الاسمالنوعالوصف
sheetSheetورقة البيانات النشطة الجديدة.

الإرجاع

Sheet: ورقة البيانات التي تمّ جعلها الورقة النشطة الجديدة


setActiveSheet(sheet, restoreSelection)

تُستخدَم لضبط الورقة النشطة في جدول بيانات، مع خيار استعادة أحدث اختيار داخل تلك الورقة. تعرِض واجهة مستخدم "جداول بيانات Google" الورقة التي تم اختيارها ما لم تكن الورقة تنتمي إلى جدول بيانات مختلف.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const firstSheet = spreadsheet.getSheets()[0];
const 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
const range = spreadsheet.getActiveSheet().getSelection().getActiveRange();
Logger.log(range.getA1Notation());

المعلمات

الاسمالنوعالوصف
sheetSheetورقة البيانات النشطة الجديدة.
restoreSelectionBooleanإذا كان الخيار true، سيتم اختيار أحدث اختيار للورقة النشطة الجديدة مرة أخرى عندما تصبح الورقة الجديدة نشطة. إذا كان الخيار false، ستصبح الورقة الجديدة نشطة بدون تغيير الاختيار الحالي.

الإرجاع

Sheet - الورقة النشطة الجديدة

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

  • 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
const 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.
const cell =
    SpreadsheetApp.getActiveSpreadsheet().getSheets()[0].getRange('B5');
SpreadsheetApp.setCurrentCell(cell);

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

المعلمات

الاسمالنوعالوصف
cellRangeالخلية التي سيتم ضبطها على أنّها الخلية الحالية.

الإرجاع

Range: الخلية الحالية التي تم ضبطها حديثًا

التفويض

تتطلّب النصوص البرمجية التي تستخدِم هذه الطريقة الحصول على إذن واحد أو أكثر من النطاقات التالية:

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