Class Range

النطاق

الوصول إلى نطاقات جداول البيانات وتعديلها يمكن أن يكون النطاق خلية واحدة في ورقة بيانات أو مجموعة من الخلايا المجاورة في ورقة بيانات.

الطُرق

الطريقةنوع القيمة التي يتم عرضهاوصف قصير
activate()Rangeتُستخدَم لضبط النطاق المحدّد على أنّه active range، مع استخدام الخلية العلوية اليسار في النطاق على أنّها current cell.
activateAsCurrentCell()Rangeلضبط الخلية المحدّدة على أنّها current cell.
addDeveloperMetadata(key)Rangeتُضيف البيانات الوصفية للمطوّر باستخدام المفتاح المحدّد إلى النطاق.
addDeveloperMetadata(key, visibility)Rangeتُضيف البيانات الوصفية للمطوّر باستخدام المفتاح ومستوى العرض المحدّدَين إلى النطاق.
addDeveloperMetadata(key, value)Rangeتُضيف البيانات الوصفية للمطوّر مع المفتاح والقيمة المحدّدَين إلى النطاق.
addDeveloperMetadata(key, value, visibility)Rangeتُضيف البيانات الوصفية للمطوّر مع المفتاح والقيمة ومستوى العرض المحدّدَين إلى النطاق.
applyColumnBanding()Bandingتطبِّق مظهرًا تلقائيًا للشريط العمودي على النطاق.
applyColumnBanding(bandingTheme)Bandingتطبِّق هذه الدالة تصميمًا محدّدًا للشريط العمودي على النطاق.
applyColumnBanding(bandingTheme, showHeader, showFooter)Bandingتطبِّق هذه الدالة موضوعًا محدّدًا للشريط العمودي على النطاق باستخدام إعدادات الرأس والتذييل المحدّدة.
applyRowBanding()Bandingتُطبِّق مظهرًا تلقائيًا للشريط على الصفوف على النطاق.
applyRowBanding(bandingTheme)Bandingتطبِّق نمطًا محدّدًا لتجميع الصفوف على النطاق.
applyRowBanding(bandingTheme, showHeader, showFooter)Bandingتُطبِّق هذه الدالة مظهرًا محدّدًا للشريط على الصفوف على النطاق مع إعدادات الرأس والتذييل المحدّدة.
autoFill(destination, series)voidتملأ destinationRange بالبيانات استنادًا إلى البيانات في هذا النطاق.
autoFillToNeighbor(series)voidتُحسِّب هذه الدالة نطاقًا لملئه ببيانات جديدة استنادًا إلى الخلايا المجاورة، وتملأ هذا النطاق تلقائيًا بقيم جديدة استنادًا إلى البيانات الواردة في هذا النطاق.
breakApart()Rangeافصل أي خلايا متعددة الأعمدة في النطاق إلى خلايا فردية مرة أخرى.
canEdit()Booleanيحدِّد ما إذا كان لدى المستخدم إذن بتعديل كل خلية في النطاق.
check()Rangeيغيّر حالة مربّعات الاختيار في النطاق إلى "تمّ وضع علامة".
clear()Rangeتمحو مجموعة المحتوى والتنسيقات.
clear(options)Rangeتمحو هذه العملية نطاق المحتوى والتنسيق وقواعد التحقّق من صحة البيانات و/أو التعليقات، على النحو المحدّد باستخدام الخيارات المتقدّمة المقدّمة.
clearContent()Rangeتمحو هذه الدالة محتوى النطاق، مع إبقاء التنسيق سليمًا.
clearDataValidations()Rangeتمحو قواعد التحقّق من صحة البيانات للنطاق.
clearFormat()Rangeتمحو التنسيق لهذا النطاق.
clearNote()Rangeلمحو الملاحظة في الخلية أو الخلايا المحدّدة
collapseGroups()Rangeتصغير جميع المجموعات التي تكون مضمّنة بالكامل ضمن النطاق
copyFormatToRange(gridId, column, columnEnd, row, rowEnd)voidانسخ تنسيق النطاق إلى الموقع المحدّد.
copyFormatToRange(sheet, column, columnEnd, row, rowEnd)voidانسخ تنسيق النطاق إلى الموقع المحدّد.
copyTo(destination)voidتنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر.
copyTo(destination, copyPasteType, transposed)voidتنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر.
copyTo(destination, options)voidتنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر.
copyValuesToRange(gridId, column, columnEnd, row, rowEnd)voidنسخ محتوى النطاق إلى الموقع المحدَّد
copyValuesToRange(sheet, column, columnEnd, row, rowEnd)voidنسخ محتوى النطاق إلى الموقع المحدَّد
createDataSourcePivotTable(dataSource)DataSourcePivotTableتُنشئ هذه الدالة جدولاً محوريًا فارغًا لمصدر البيانات من مصدر البيانات، ويتم تثبيته في الخلية الأولى في هذا النطاق.
createDataSourceTable(dataSource)DataSourceTableتُنشئ هذه الدالة جدول مصدر بيانات فارغًا من مصدر البيانات، ويتم تثبيته في أول خلية في هذا النطاق.
createDeveloperMetadataFinder()DeveloperMetadataFinderتعرِض هذه السمة واجهة برمجة تطبيقات DeveloperMetadataFinderApi للعثور على البيانات الوصفية للمطوّر في نطاق هذا النطاق.
createFilter()Filterتنشئ هذه الدالة فلترًا وتطبّقه على النطاق المحدّد في الورقة.
createPivotTable(sourceData)PivotTableتنشئ هذه الدالة جدولاً محوريًا فارغًا من sourceData المحدّد والمرسَخ في الخلية الأولى في هذا النطاق.
createTextFinder(findText)TextFinderتُنشئ أداة البحث عن النصوص للنطاق، والتي يمكنها البحث عن النص واستبداله في هذا النطاق.
deleteCells(shiftDimension)voidيؤدي إلى حذف نطاق الخلايا هذا.
expandGroups()Rangeتوسيع المجموعات المصغّرة التي يتداخل نطاقها أو زر التحكّم فيها مع هذا النطاق
getA1Notation()Stringلعرض وصف سلسلة للنطاق، بترميز A1.
getBackground()Stringعرض لون خلفية الخلية في أعلى يمين النطاق (على سبيل المثال، '#ffffff')
getBackgroundObject()Colorلعرض لون خلفية الخلية في أعلى يمين النطاق.
getBackgroundObjects()Color[][]لعرض ألوان خلفية الخلايا في النطاق
getBackgrounds()String[][]لعرض ألوان خلفية الخلايا في النطاق (على سبيل المثال، '#ffffff').
getBandings()Banding[]عرض جميع النطاقات التي تم تطبيقها على أي خلايا في هذا النطاق
getCell(row, column)Rangeلعرض خلية معيّنة ضمن نطاق.
getColumn()Integerتعرِض هذه الدالة موضع العمود الأول لهذا النطاق.
getDataRegion()Rangeتعرض نسخة من النطاق الموسَّع في الاتجاهات الأربعة الرئيسية Direction لتغطية كل الخلايا المجاورة التي تحتوي على بيانات.
getDataRegion(dimension)Rangeلعرض نسخة من النطاق الموسّع Direction.UP وDirection.DOWN إذا كان السمة المحدّدة هي Dimension.ROWS، أو Direction.NEXT وDirection.PREVIOUS إذا كانت السمة هي Dimension.COLUMNS.
getDataSourceFormula()DataSourceFormulaتعرض DataSourceFormula للخلية الأولى في النطاق، أو null إذا كانت الخلية لا تحتوي على صيغة مصدر بيانات.
getDataSourceFormulas()DataSourceFormula[]لعرض DataSourceFormula للخلايا في النطاق.
getDataSourcePivotTables()DataSourcePivotTable[]تحصل على جميع الجداول المحورية لمصدر البيانات التي تتقاطع مع النطاق.
getDataSourceTables()DataSourceTable[]تحصل على جميع جداول مصادر البيانات التي تتقاطع مع النطاق.
getDataSourceUrl()Stringتعرِض هذه الدالة عنوان URL للبيانات في هذا النطاق، ويمكن استخدامها لإنشاء الرسوم البيانية وطلبات البحث.
getDataTable()DataTableعرض البيانات داخل هذا العنصر كجدول بيانات
getDataTable(firstRowIsHeader)DataTableعرض البيانات داخل هذا النطاق كجدول بيانات
getDataValidation()DataValidationعرض قاعدة التحقّق من صحة البيانات للخلية في أعلى يمين النطاق
getDataValidations()DataValidation[][]تعرِض قواعد التحقّق من صحة البيانات لجميع الخلايا في النطاق.
getDeveloperMetadata()DeveloperMetadata[]تحصل على البيانات الوصفية للمطوّر المرتبطة بهذا النطاق.
getDisplayValue()Stringلعرض القيمة المعروضة للخلية في أعلى يمين النطاق.
getDisplayValues()String[][]لعرض شبكة مستطيلة من القيم لهذا النطاق.
getFilter()Filterعرض الفلتر في الورقة التي ينتمي إليها هذا النطاق، أو null في حال عدم توفّر فلتر في الورقة
getFontColorObject()Colorلعرض لون الخط للخلية في أعلى يمين النطاق.
getFontColorObjects()Color[][]لعرض ألوان خطوط الخلايا في النطاق
getFontFamilies()String[][]لعرض مجموعات خطوط الخلايا في النطاق.
getFontFamily()Stringلعرض مجموعة خطوط الخلية في أعلى يمين النطاق.
getFontLine()Stringتحصل على نمط الخط للخلية في أعلى يمين النطاق ('underline' أو 'line-through' أو 'none').
getFontLines()String[][]تحصل على نمط السطر للخلايا في النطاق ('underline' أو 'line-through' أو 'none').
getFontSize()Integerلعرض حجم الخط بوحدة النقطة للخلية في أعلى يمين النطاق.
getFontSizes()Integer[][]لعرض أحجام الخطوط للخلايا في النطاق.
getFontStyle()Stringعرض نمط الخط ('italic' أو 'normal') للخلية في أعلى يمين النطاق
getFontStyles()String[][]لعرض أنماط الخطوط للخلايا في النطاق.
getFontWeight()Stringلعرض وزن الخط (عادي/غامق) للخلية في أعلى يمين النطاق.
getFontWeights()String[][]لعرض كثافة الخط للخلايا في النطاق.
getFormula()Stringتعرِض هذه الدالة الصيغة (نمط A1) للخلية في أعلى يمين النطاق، أو سلسلة فارغة إذا كانت الخلية فارغة أو لا تحتوي على صيغة.
getFormulaR1C1()Stringتعرِض هذه الدالة الصيغة (ترميز R1C1) لخلية معيّنة، أو null إذا لم تكن هناك صيغة.
getFormulas()String[][]لعرض الصِيَغ (نمط A1) للخلايا في النطاق
getFormulasR1C1()String[][]لعرض الصِيَغ (ترميز R1C1) للخلايا في النطاق
getGridId()Integerلعرض رقم تعريف الشبكة لجدول الأركان الأساسية للنطاق
getHeight()Integerلعرض ارتفاع النطاق.
getHorizontalAlignment()Stringعرض المحاذاة الأفقية للنص (يمين/وسط/يسار) للخلية في الركن العلوي الأيمن من النطاق
getHorizontalAlignments()String[][]لعرض المحاذاة الأفقية للخلايا في النطاق.
getLastColumn()Integerتعرِض موضع العمود الأخير.
getLastRow()Integerلعرض موضع الصف الأخير.
getMergedRanges()Range[]لعرض صفيف من عناصر Range تمثّل الخلايا المدمجة التي تكون بالكامل ضمن النطاق الحالي، أو تحتوي على خلية واحدة على الأقل في النطاق الحالي.
getNextDataCell(direction)Rangeبدءًا من الخلية في أول عمود وصف من النطاق، تعرض هذه الدالة الخلية التالية في الاتجاه المحدَّد، وهي حافة نطاق متّصل من الخلايا التي تحتوي على بيانات أو الخلية عند حافة جدول البيانات في هذا الاتجاه.
getNote()Stringلعرض ملاحظة مرتبطة بالنطاق المحدّد.
getNotes()String[][]لعرض الملاحظات المرتبطة بالخلايا في النطاق.
getNumColumns()Integerلعرض عدد الأعمدة في هذا النطاق.
getNumRows()Integerلعرض عدد الصفوف في هذا النطاق.
getNumberFormat()Stringالحصول على تنسيق الرقم أو التاريخ للخلية في أعلى يمين النطاق المحدّد
getNumberFormats()String[][]لعرض تنسيقات الأرقام أو التواريخ للخلايا في النطاق.
getRichTextValue()RichTextValueتعرِض هذه الدالة قيمة نص تنسيق RTF للخلية في أعلى يمين النطاق، أو null إذا لم تكن قيمة الخلية نصًا.
getRichTextValues()RichTextValue[][]لعرض قيم النصوص المنسَّقة للخلايا في النطاق.
getRow()Integerتعرِض هذه الدالة موضع الصف لهذا النطاق.
getRowIndex()Integerتعرِض هذه الدالة موضع الصف لهذا النطاق.
getSheet()Sheetتعرِض هذه الدالة ورقة البيانات التي ينتمي إليها هذا النطاق.
getTextDirection()TextDirectionعرض اتجاه النص للخلية في أعلى يمين النطاق
getTextDirections()TextDirection[][]لعرض اتجاهات النص للخلايا في النطاق.
getTextRotation()TextRotationتعرض إعدادات تدوير النص للخلية في أعلى يمين النطاق.
getTextRotations()TextRotation[][]لعرض إعدادات تدوير النص للخلايا في النطاق.
getTextStyle()TextStyleتُعرِض نمط النص للخلية في أعلى يمين النطاق.
getTextStyles()TextStyle[][]لعرض أنماط النصوص للخلايا في النطاق
getValue()Objectلعرض قيمة الخلية في أعلى يمين النطاق.
getValues()Object[][]لعرض شبكة مستطيلة من القيم لهذا النطاق.
getVerticalAlignment()Stringتعرِض هذه الدالة المحاذاة العمودية (أعلى/وسط/أسفل) للخلية في أعلى يمين النطاق.
getVerticalAlignments()String[][]لعرض المحاذاة الرأسية للخلايا في النطاق.
getWidth()Integerلعرض عرض النطاق بالأعمدة.
getWrap()Booleanتعرِض ما إذا كان النص في الخلية يتم لفّه.
getWrapStrategies()WrapStrategy[][]لعرض استراتيجيات لف النص للخلايا في النطاق.
getWrapStrategy()WrapStrategyعرض استراتيجية لف النص للخلية في أعلى يمين النطاق
getWraps()Boolean[][]تعرِض ما إذا كان النص في الخلايا يتم لفّه.
insertCells(shiftDimension)Rangeتُدرج خلايا فارغة في هذا النطاق.
insertCheckboxes()Rangeتُدرج مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام true للإشارة إلى أنّها محدّدة false للإشارة إلى أنّها غير محدّدة.
insertCheckboxes(checkedValue)Rangeتُدرج مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام قيمة مخصّصة للمربّعات المحدّدة والسلسلة الفارغة للمربّعات غير المحدّدة.
insertCheckboxes(checkedValue, uncheckedValue)Rangeتُدرِج هذه الدالة مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام قيم مخصّصة للحالات المحدّدة والغير محدّدة.
isBlank()Booleanتعرِض القيمة true إذا كان النطاق فارغًا تمامًا.
isChecked()Booleanتعرِض هذه الدالة ما إذا كانت حالة مربّع الاختيار في كل الخلايا ضمن النطاق هي "تمّ الاختيار".
isEndColumnBounded()Booleanيحدِّد ما إذا كان نهاية النطاق مرتبطة بعمود معيّن.
isEndRowBounded()Booleanيحدِّد ما إذا كان نهاية النطاق مرتبطة بصف معيّن.
isPartOfMerge()Booleanتعرِض القيمة true إذا كانت الخلايا في النطاق الحالي تتداخل مع أي خلايا مدمجة.
isStartColumnBounded()Booleanلتحديد ما إذا كانت بداية النطاق مرتبطة بعمود معيّن.
isStartRowBounded()Booleanيحدِّد ما إذا كانت بداية النطاق مرتبطة بصف معيّن.
merge()Rangeدمج الخلايا في النطاق معًا في قالب واحد
mergeAcross()Rangeدمج الخلايا في النطاق على مستوى أعمدة النطاق
mergeVertically()Rangeدمج الخلايا في النطاق معًا
moveTo(target)voidقصّ هذا النطاق ولصقه (التنسيق والقيم) في النطاق المستهدَف
offset(rowOffset, columnOffset)Rangeلعرض نطاق جديد تمّت إزاحته من هذا النطاق بعدد معيّن من الصفوف والأعمدة (يمكن أن يكون سالبًا).
offset(rowOffset, columnOffset, numRows)Rangeتعرِض هذه الدالة نطاقًا جديدًا نسبيًا للنطاق الحالي، ويتمّ إزاحة نهايته العلوية اليمنى عن النطاق الحالي بالصفوف والأعمدة المحدّدة، وبالارتفاع المحدّد في الخلايا.
offset(rowOffset, columnOffset, numRows, numColumns)Rangeلعرض نطاق جديد نسبيًا إلى النطاق الحالي، يتمّ إزاحة نهايته العلوية اليسرى عن النطاق الحالي بالصفوف والأعمدة المحدّدة، مع الارتفاع والعرض المحدّدَين في الخلايا.
protect()Protectionلإنشاء عنصر يمكنه حماية النطاق من التعديل إلا من قِبل المستخدمين الذين لديهم إذن
randomize()Rangeلترتيب الصفوف عشوائيًا في النطاق المحدّد.
removeCheckboxes()Rangeتزيل جميع مربّعات الاختيار من النطاق.
removeDuplicates()Rangeتزيل الصفوف ضمن هذا النطاق التي تحتوي على قيم مكرّرة للقيم في أي صف سابق.
removeDuplicates(columnsToCompare)Rangeتزيل الصفوف ضمن هذا النطاق التي تحتوي على قيم في الأعمدة المحدّدة وهي نُسخ طبق الأصل من قيم أي صف سابق.
setBackground(color)Rangeلضبط لون خلفية جميع الخلايا في النطاق بترميز CSS (مثل '#ffffff' أو 'white').
setBackgroundObject(color)Rangeلضبط لون خلفية جميع الخلايا في النطاق
setBackgroundObjects(color)Rangeلضبط شبكة مستطيلة من ألوان الخلفية (يجب أن تتطابق مع أبعاد هذا النطاق).
setBackgroundRGB(red, green, blue)Rangeلضبط الخلفية على اللون المحدّد باستخدام قيم RGB (أعداد صحيحة تتراوح بين 0 و255).
setBackgrounds(color)Rangeلضبط شبكة مستطيلة من ألوان الخلفية (يجب أن تتطابق مع أبعاد هذا النطاق).
setBorder(top, left, bottom, right, vertical, horizontal)Rangeلضبط سمة border
setBorder(top, left, bottom, right, vertical, horizontal, color, style)Rangeلضبط سمة الحدود باستخدام اللون و/أو النمط
setDataValidation(rule)Rangeتُعدّ قاعدة واحدة للتحقّق من صحة البيانات لجميع الخلايا في النطاق.
setDataValidations(rules)Rangeتُستخدَم لضبط قواعد التحقّق من صحة البيانات لجميع الخلايا في النطاق.
setFontColor(color)Rangeلضبط لون الخط بترميز CSS (مثل '#ffffff' أو 'white').
setFontColorObject(color)Rangeلضبط لون الخط للنطاق المحدّد
setFontColorObjects(colors)Rangeلضبط شبكة مستطيلة من ألوان الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).
setFontColors(colors)Rangeلضبط شبكة مستطيلة من ألوان الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).
setFontFamilies(fontFamilies)Rangeلضبط شبكة مستطيلة من مجموعات الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).
setFontFamily(fontFamily)Rangeلضبط مجموعة الخطوط، مثل Arial أو Helvetica
setFontLine(fontLine)Rangeلضبط نمط سطر الخط للنص المحدّد ('underline' أو 'line-through' أو 'none').
setFontLines(fontLines)Rangeتُستخدَم لضبط شبكة مستطيلة من أنماط الخطوط (يجب أن تتطابق مع سمات هذا النطاق).
setFontSize(size)Rangeلضبط حجم الخط، مع تحديد حجم النقطة المراد استخدامه.
setFontSizes(sizes)Rangeلضبط شبكة مستطيلة من أحجام الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).
setFontStyle(fontStyle)Rangeاضبط نمط الخط للنطاق المحدّد ('italic' أو 'normal').
setFontStyles(fontStyles)Rangeلضبط شبكة مستطيلة من أنماط الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).
setFontWeight(fontWeight)Rangeاضبط سمك الخط للنطاق المحدّد (عادي/غامق).
setFontWeights(fontWeights)Rangeلضبط شبكة مستطيلة من قيم مقياس الخط (يجب أن تتطابق مع سمات هذا النطاق).
setFormula(formula)Rangeتعديل صيغة هذا النطاق
setFormulaR1C1(formula)Rangeتعديل صيغة هذا النطاق
setFormulas(formulas)Rangeتُستخدَم لضبط شبكة مستطيلة من الصِيَغ (يجب أن تتطابق مع سمات هذا النطاق).
setFormulasR1C1(formulas)Rangeتُستخدَم لضبط شبكة مستطيلة من الصِيَغ (يجب أن تتطابق مع سمات هذا النطاق).
setHorizontalAlignment(alignment)Rangeاضبط المحاذاة الأفقية (من اليسار إلى اليمين) للنطاق المحدّد (يمين/وسط/يسار).
setHorizontalAlignments(alignments)Rangeلضبط شبكة مستطيلة من المحاذاات الأفقية
setNote(note)Rangeتُستخدَم لضبط الملاحظة على القيمة المحدّدة.
setNotes(notes)Rangeلضبط شبكة مستطيلة من الملاحظات (يجب أن تتطابق مع سمات هذا النطاق).
setNumberFormat(numberFormat)Rangeتضبط تنسيق الرقم أو التاريخ على سلسلة التنسيق المحدّدة.
setNumberFormats(numberFormats)Rangeتُستخدَم لضبط شبكة مستطيلة من تنسيقات الأرقام أو التواريخ (يجب أن تتطابق مع سمات هذا النطاق).
setRichTextValue(value)Rangeتُستخدَم لضبط قيمة "نص منسق" للخلايا في النطاق.
setRichTextValues(values)Rangeلضبط شبكة مستطيلة من قيم النص المنسَّق
setShowHyperlink(showHyperlink)Rangeيحدّد ما إذا كان يجب أن يعرض النطاق روابط تشعّبية أم لا.
setTextDirection(direction)Rangeتُستخدَم لضبط اتجاه النص للخلايا في النطاق.
setTextDirections(directions)Rangeلضبط شبكة مستطيلة لاتجاهات النص
setTextRotation(degrees)Rangeلضبط إعدادات تدوير النص للخلايا في النطاق
setTextRotation(rotation)Rangeلضبط إعدادات تدوير النص للخلايا في النطاق
setTextRotations(rotations)Rangeلضبط شبكة مستطيلة من عمليات تدوير النص.
setTextStyle(style)Rangeلضبط نمط النص للخلايا في النطاق
setTextStyles(styles)Rangeلضبط شبكة مستطيلة من أنماط النصوص
setValue(value)Rangeتُستخدَم لضبط قيمة النطاق.
setValues(values)Rangeتُستخدَم لضبط شبكة مستطيلة من القيم (يجب أن تتطابق مع سمات هذا النطاق).
setVerticalAlignment(alignment)Rangeاضبط المحاذاة العمودية (من أعلى إلى أسفل) للنطاق المحدّد (أعلى/وسط/أسفل).
setVerticalAlignments(alignments)Rangeلضبط شبكة مستطيلة من المحاذاة العمودية (يجب أن تتطابق مع سمات هذا النطاق).
setVerticalText(isVertical)Rangeلضبط ما إذا كان سيتم تجميع نص الخلايا في النطاق أم لا
setWrap(isWrapEnabled)Rangeضبط لفّ الخلايا للنطاق المحدّد
setWrapStrategies(strategies)Rangeتُستخدَم لضبط شبكة مستطيلة من استراتيجيات التفاف.
setWrapStrategy(strategy)Rangeلضبط استراتيجية لف النص للخلايا في النطاق
setWraps(isWrapEnabled)Rangeتُستخدَم لضبط شبكة مستطيلة من سياسات لفّ النص (يجب أن تتطابق مع أبعاد هذا النطاق).
shiftColumnGroupDepth(delta)Rangeتغيِّر عمق تجميع الأعمدة للنطاق بمقدار المبلغ المحدّد.
shiftRowGroupDepth(delta)Rangeتغيِّر هذه الدالة عمق تجميع الصفوف للنطاق بالمبلغ المحدّد.
sort(sortSpecObj)Rangeلترتيب الخلايا في النطاق المحدّد حسب العمود والترتيب المحدّد
splitTextToColumns()voidتقسم عمود نص إلى أعمدة متعددة استنادًا إلى فاصل يتم رصده تلقائيًا.
splitTextToColumns(delimiter)voidتقسم هذه الدالة عمود نص إلى أعمدة متعددة باستخدام السلسلة المحدّدة كفاصل مخصّص.
splitTextToColumns(delimiter)voidتقسم عمود نص إلى أعمدة متعددة استنادًا إلى الفاصل المحدّد.
trimWhitespace()Rangeتُزيل هذه الدالة المسافات البيضاء (مثل المسافات أو علامات التبويب أو الأسطر الجديدة) في كل خلية في هذا النطاق.
uncheck()Rangeلتغيير حالة مربّعات الاختيار في النطاق إلى "غير محدَّد"

مستندات تفصيلية

activate()

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

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getRange('A1:D10');
range.activate();

const selection = sheet.getSelection();
// Current cell: A1
const currentCell = selection.getCurrentCell();
// Active Range: A1:D10
const activeRange = selection.getActiveRange();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.


activateAsCurrentCell()

لضبط الخلية المحدّدة على أنّها current cell.

إذا كانت الخلية المحدّدة متوفّرة في نطاق حالي، يصبح هذا النطاق هو النطاق النشط مع الخلية باعتبارها الخلية الحالية.

إذا لم تكن الخلية المحدّدة متوفّرة في أي نطاق حالي، تتم تتم أولاً إزالاة التحديد الحالي وتصبح الخلية هي الخلية الحالية والنطاق النشط.

ملاحظة: يجب أن يتألّف Range المحدّد من خلية واحدة، وإلا سيؤدي ذلك إلى طرح استثناء.

// Gets the first sheet of the spreadsheet.
const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];

// Gets the cell B5 and sets it as the active cell.
const range = sheet.getRange('B5');
const currentCell = range.activateAsCurrentCell();

// Logs the activated cell.
console.log(currentCell.getA1Notation());

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

addDeveloperMetadata(key)

تُضيف البيانات الوصفية للمطوّر باستخدام المفتاح المحدّد إلى النطاق.

// 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 row 2 on the sheet.
const range = sheet.getRange('2:2');

// Adds the key 'NAME' to the developer metadata for row 2.
range.addDeveloperMetadata('NAME');

// Gets the metadata and logs it to the console.
const developerMetaData = range.getDeveloperMetadata()[0];
console.log(developerMetaData.getKey());

المعلَمات

الاسمالنوعالوصف
keyStringمفتاح البيانات الوصفية الجديدة للمطوّر

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

addDeveloperMetadata(key, visibility)

تُضيف البيانات الوصفية للمطوّر باستخدام المفتاح ومستوى العرض المحدّدَين إلى النطاق.

// 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 row 2 on Sheet1.
const range = sheet.getRange('2:2');

// Adds the key 'NAME' and sets the developer metadata visibility to 'DOCUMENT'
// for row 2 on Sheet1.
range.addDeveloperMetadata(
    'NAME',
    SpreadsheetApp.DeveloperMetadataVisibility.DOCUMENT,
);

// Gets the updated metadata info and logs it to the console.
const developerMetaData = range.getDeveloperMetadata()[0];
console.log(developerMetaData.getKey());
console.log(developerMetaData.getVisibility().toString());

المعلَمات

الاسمالنوعالوصف
keyStringمفتاح البيانات الوصفية الجديدة للمطوّر
visibilityDeveloperMetadataVisibilityمستوى ظهور البيانات الوصفية الجديدة للمطوّر

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

addDeveloperMetadata(key, value)

تُضيف البيانات الوصفية للمطوّر مع المفتاح والقيمة المحدّدَين إلى النطاق.

// 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 row 2 of Sheet1.
const range = sheet.getRange('2:2');

// Adds the key 'NAME' and sets the value to 'GOOGLE' for the metadata of row 2.
range.addDeveloperMetadata('NAME', 'GOOGLE');

// Gets the metadata and logs it to the console.
const developerMetaData = range.getDeveloperMetadata()[0];
console.log(developerMetaData.getKey());
console.log(developerMetaData.getValue());

المعلَمات

الاسمالنوعالوصف
keyStringمفتاح البيانات الوصفية الجديدة للمطوّر
valueStringقيمة البيانات الوصفية الجديدة لمطوّر البرامج

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

addDeveloperMetadata(key, value, visibility)

تُضيف البيانات الوصفية للمطوّر مع المفتاح والقيمة ومستوى العرض المحدّدَين إلى النطاق.

// 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 row 2 on the sheet.
const range = sheet.getRange('2:2');

// Adds the key 'NAME', sets the value to 'GOOGLE', and sets the visibility
// to PROJECT for row 2 on the sheet.
range.addDeveloperMetadata(
    'NAME',
    'GOOGLE',
    SpreadsheetApp.DeveloperMetadataVisibility.PROJECT,
);

// Gets the updated metadata info and logs it to the console.
const developerMetaData = range.getDeveloperMetadata()[0];
console.log(developerMetaData.getKey());
console.log(developerMetaData.getValue());
console.log(developerMetaData.getVisibility().toString());

المعلَمات

الاسمالنوعالوصف
keyStringمفتاح البيانات الوصفية الجديدة للمطوّر
valueStringقيمة البيانات الوصفية الجديدة لمطوّر البرامج
visibilityDeveloperMetadataVisibilityمستوى ظهور البيانات الوصفية الجديدة للمطوّر

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

applyColumnBanding()

تطبِّق مظهرًا تلقائيًا للشريط العمودي على النطاق. يحتوي شريط التسمية تلقائيًا على رأس ولا يحتوي على لون تذييل.

// 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 row 2 on the sheet.
const range = sheet.getRange('2:2');

// Applies column banding to row 2.
const colBanding = range.applyColumnBanding();

// Gets the first banding on the sheet and logs the color of the header column.
console.log(
    sheet.getBandings()[0]
        .getHeaderColumnColorObject()
        .asRgbColor()
        .asHexString(),
);

// Gets the first banding on the sheet and logs the color of the second column.
console.log(
    sheet.getBandings()[0]
        .getSecondColumnColorObject()
        .asRgbColor()
        .asHexString(),
);

الإرجاع

Banding - النطاق الجديد.

التفويض

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

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

applyColumnBanding(bandingTheme)

تطبِّق هذه الدالة تصميمًا محدّدًا للشريط العمودي على النطاق. يحتوي شريط التسمية تلقائيًا على لون رأس وليس لون تذييل.

// 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 row 2 on the sheet.
const range = sheet.getRange('2:2');

// Applies the INDIGO color banding theme to the columns in row 2.
const colBanding = range.applyColumnBanding(SpreadsheetApp.BandingTheme.INDIGO);

// Gets the first banding on the sheet and logs the color of the second column.
console.log(
    sheet.getBandings()[0]
        .getSecondColumnColorObject()
        .asRgbColor()
        .asHexString(),
);

المعلَمات

الاسمالنوعالوصف
bandingThemeBandingThemeمظهر لوني لتطبيقه على الأعمدة في النطاق

الإرجاع

Banding - النطاق الجديد.

التفويض

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

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

applyColumnBanding(bandingTheme, showHeader, showFooter)

تطبِّق هذه الدالة موضوعًا محدّدًا للشريط العمودي على النطاق باستخدام إعدادات الرأس والتذييل المحدّدة.

// 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 rows 12-22 on the sheet.
const range = sheet.getRange('12:22');

// Applies the BLUE color banding theme to rows 12-22.
// Sets the header visibility to false and the footer visibility to true.
const colBanding = range.applyColumnBanding(
    SpreadsheetApp.BandingTheme.BLUE,
    false,
    true,
);

// Gets the banding color and logs it to the console.
console.log(
    sheet.getBandings()[0]
        .getSecondColumnColorObject()
        .asRgbColor()
        .asHexString(),
);

// Gets the header color object and logs it to the console. Returns null because
// the header visibility is set to false.
console.log(sheet.getBandings()[0].getHeaderColumnColorObject());

// Gets the footer color and logs it to the console.
console.log(
    sheet.getBandings()[0]
        .getFooterColumnColorObject()
        .asRgbColor()
        .asHexString(),
);

المعلَمات

الاسمالنوعالوصف
bandingThemeBandingThemeمظهر لوني لتطبيقه على الأعمدة في النطاق
showHeaderBooleanإذا كان true، يتم تطبيق لون عنوان موضوع النطاقات على العمود الأول.
showFooterBooleanإذا كان الخيار true، يتم تطبيق لون تذييل مظهر النطاقات على العمود الأخير.

الإرجاع

Banding - النطاق الجديد.

التفويض

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

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

applyRowBanding()

تُطبِّق مظهرًا تلقائيًا للشريط على الصفوف على النطاق. يحتوي شريط التسمية تلقائيًا على رأس ولا يحتوي على لون تذييل.

// Opens the spreadsheet by its URL. If you created your script from within a
// Google Sheets spreadsheet, 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 rows 1-30 on Sheet1.
const range = sheet.getRange('1:30');

// Applies row banding to rows 1-30.
range.applyRowBanding();

// Gets the hex color of the second banded row.
const secondRowColor =
    range.getBandings()[0].getSecondRowColorObject().asRgbColor().asHexString();

// Logs the hex color to console.
console.log(secondRowColor);

الإرجاع

Banding — خطوط التداخل

التفويض

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

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

applyRowBanding(bandingTheme)

تطبِّق نمطًا محدّدًا لتجميع الصفوف على النطاق. يحتوي شريط التسمية تلقائيًا على لون للعنوان ولا يحتوي على لون للتذييل.

// Opens the spreadsheet by its URL. If you created your script from within a
// Google Sheets spreadsheet, 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 rows 1-30 on Sheet1.
const range = sheet.getRange('1:30');

// Applies the INDIGO row banding theme to rows 1-30.
range.applyRowBanding(SpreadsheetApp.BandingTheme.INDIGO);

// Gets the hex color of the second banded row.
const secondRowColor =
    range.getBandings()[0].getSecondRowColorObject().asRgbColor().asHexString();

// Logs the hex color to console.
console.log(secondRowColor);

المعلَمات

الاسمالنوعالوصف
bandingThemeBandingThemeمظهر لون لتطبيقه على الصفوف في النطاق

الإرجاع

Banding - النطاق الجديد.

التفويض

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

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

applyRowBanding(bandingTheme, showHeader, showFooter)

تُطبِّق هذه الدالة مظهرًا محدّدًا للشريط على الصفوف على النطاق مع إعدادات الرأس والتذييل المحدّدة.

// Opens the spreadsheet by its URL. If you created your script from within a
// Google Sheets spreadsheet, 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 rows 1-30 on Sheet1.
const range = sheet.getRange('1:30');

// Applies the INDIGO row banding to rows 1-30 and
// specifies to hide the header and show the footer.
range.applyRowBanding(SpreadsheetApp.BandingTheme.INDIGO, false, true);

المعلَمات

الاسمالنوعالوصف
bandingThemeBandingThemeمظهر لون لتطبيقه على الصفوف في النطاق
showHeaderBooleanإذا كان true، يتم تطبيق لون عنوان مظهر النطاقات على الصف الأول.
showFooterBooleanإذا كان true، يتم تطبيق لون تذييل مظهر النطاقات على الصف الأخير.

الإرجاع

Banding - النطاق الجديد.

التفويض

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

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

autoFill(destination, series)

تملأ destinationRange بالبيانات استنادًا إلى البيانات في هذا النطاق. يتم أيضًا تحديد القيم الجديدة حسب نوع series المحدّد. يجب أن يحتوي نطاق الوجهة على هذا النطاق وأن يتم تمديده في اتجاه واحد فقط. على سبيل المثال، تملأ العبارة التالية الحقل A1:A20 بسلسلة من الأرقام المتزايدة استنادًا إلى القيم الحالية في الحقل A1:A4:

const sheet = SpreadsheetApp.getActiveSheet();

// Has values [1, 2, 3, 4].
const sourceRange = sheet.getRange('A1:A4');
// The range to fill with values.
const destination = sheet.getRange('A1:A20');

// Inserts new values in A5:A20, continuing the pattern expressed in A1:A4
sourceRange.autoFill(destination, SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);

المعلَمات

الاسمالنوعالوصف
destinationRangeالنطاق الذي سيتم ملؤه تلقائيًا بالقيم يجب أن يحتوي نطاق الوجهة على هذا النطاق وأن يتم تمديده في اتجاه واحد فقط (للأعلى أو للأسفل أو لليسار أو لليمين).
seriesAutoFillSeriesنوع سلسلة الملء التلقائي التي يجب استخدامها لاحتساب القيم الجديدة. يختلف أثر هذه السلسلة استنادًا إلى نوع بيانات المصدر وكميتها.

التفويض

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

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

autoFillToNeighbor(series)

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

يأخذ نطاق الوجهة المحسوب في الاعتبار البيانات المحيطة لتحديد مكان إدخال القيمة الجديدة: إذا كانت هناك بيانات على يمين أو يسار عمود يتم ملؤه تلقائيًا، لا تمتد القيم الجديدة إلا إلى هذه البيانات المجاورة.

على سبيل المثال، إذا تم ملء A1:A20 بسلسلة من الأرقام المتزايدة وتمّت دعوة هذه الطريقة في النطاق B1:B4 الذي يحتوي على سلسلة من التواريخ، لن يتم إدراج القيم الجديدة إلا في B5:B20. بهذه الطريقة، "تلتصق" هذه القيم الجديدة بالخلايا التي تحتوي على قيم في العمود "أ".

const sheet = SpreadsheetApp.getActiveSheet();

// A1:A20 has values [1, 2, 3, ... 20].
// B1:B4 has values [1/1/2017, 1/2/2017, ...]
const sourceRange = sheet.getRange('B1:B4');

// Results in B5:B20 having values [1/5/2017, ... 1/20/2017]
sourceRange.autoFillToNeighbor(SpreadsheetApp.AutoFillSeries.DEFAULT_SERIES);

المعلَمات

الاسمالنوعالوصف
seriesAutoFillSeriesنوع سلسلة الملء التلقائي التي يجب استخدامها لاحتساب القيم الجديدة. يختلف أثر هذه السلسلة استنادًا إلى نوع بيانات المصدر وكميتها.

التفويض

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

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

breakApart()

افصل أي خلايا متعددة الأعمدة في النطاق إلى خلايا فردية مرة أخرى.

إنّ استدعاء هذه الدالة على نطاق هو ما يعادل اختيار نطاق والنقر على التنسيق > دمج الخلايا > إلغاء الدمج.

// Opens the spreadsheet by its URL. If you created your script from within a
// Google Sheets spreadsheet, 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 the range A1:C6 on Sheet1.
const range = sheet.getRange('A1:C6');

// Unmerges the range A1:C6 into individual cells.
range.breakApart();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

canEdit()

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

// Opens the spreadsheet by its URL. If you created your script from within a
// Google Sheets spreadsheet, 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 the range A1:C6 on Sheet1.
const range = sheet.getRange('A1:C6');

// Logs whether the user has permission to edit every cell in the range.
console.log(range.canEdit());

الإرجاع

Booleantrue إذا كان لدى المستخدم إذن بتعديل كل خلية في النطاق false في غير ذلك

التفويض

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

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

check()

تعمل هذه الدالة على تغيير حالة مربّعات الاختيار في النطاق إلى "محدَّدة"، وتتجاهل الخلايا في النطاق التي لا تحتوي حاليًا على القيمة المحدَّدة أو غير المحدَّدة التي تم ضبطها.

// Changes the state of cells which currently contain either the checked or
// unchecked value configured in the range A1:B10 to 'checked'.
const range = SpreadsheetApp.getActive().getRange('A1:B10');
range.check();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clear()

تمحو مجموعة المحتوى والتنسيقات.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.clear();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clear(options)

تمحو هذه العملية نطاق المحتوى والتنسيق وقواعد التحقّق من صحة البيانات و/أو التعليقات، على النحو المحدّد باستخدام الخيارات المتقدّمة المقدّمة. يتم محو جميع البيانات تلقائيًا.

// The code below clears range C2:G7 in the active sheet, but preserves the
// format, data validation rules, and comments.
SpreadsheetApp.getActiveSheet().getRange(2, 3, 6, 5).clear({
  contentsOnly: true
});

المعلَمات

الاسمالنوعالوصف
optionsObjectكائن JavaScript يحدّد المَعلمات المتقدّمة كما هو موضّح أدناه

المعلمات المتقدمة

الاسمالنوعالوصف
commentsOnlyBooleanتحديد ما إذا كنت تريد محو التعليقات فقط
contentsOnlyBooleanما إذا كان سيتم محو المحتوى فقط
formatOnlyBooleanيشير ذلك إلى ما إذا كان سيتم محو التنسيق فقط، مع العِلم أنّ محو التنسيق يؤدي أيضًا إلى محو قواعد التحقّق من صحة البيانات.
validationsOnlyBooleanما إذا كنت تريد محو قواعد التحقّق من صحة البيانات فقط
skipFilteredRowsBooleanما إذا كان يجب تجنُّب محو الصفوف التي تمت فلترتها

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clearContent()

تمحو هذه الدالة محتوى النطاق، مع إبقاء التنسيق سليمًا.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.clearContent();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clearDataValidations()

تمحو قواعد التحقّق من صحة البيانات للنطاق.

// Clear the data validation rules for cells A1:B5.
const range = SpreadsheetApp.getActive().getRange('A1:B5');
range.clearDataValidations();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clearFormat()

تمحو التنسيق لهذا النطاق.

يؤدي ذلك إلى محو تنسيق النص للخلية أو الخلايا في النطاق، ولكنّه لا يعيد ضبط أي قواعد تنسيق الأرقام.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.clearFormat();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

clearNote()

لمحو الملاحظة في الخلية أو الخلايا المحدّدة

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.clearNote();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

collapseGroups()

تصغير جميع المجموعات التي تكون مضمّنة بالكامل ضمن النطاق إذا لم تكن أي مجموعة ضمن النطاق بالكامل، يتم تصغير المجموعة الموسّعة الأكثر عمقًا التي تكون ضمن النطاق جزئيًا.

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getActiveRange();

// All row and column groups within the range are collapsed.
range.collapseGroups();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

copyFormatToRange(gridId, column, columnEnd, row, rowEnd)

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

للحصول على وصف مفصّل للمَعلمة gridId، راجِع getGridId().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const source = ss.getSheets()[0];

const range = source.getRange('B2:D4');

// This copies the formatting in B2:D4 in the source sheet to
// D4:F6 in the sheet with gridId 1555299895. Note that you can get the gridId
// of a sheet by calling sheet.getSheetId() or range.getGridId().
range.copyFormatToRange(1555299895, 4, 6, 4, 6);

المعلَمات

الاسمالنوعالوصف
gridIdIntegerالمعرّف الفريد للورقة ضمن جدول البيانات، بغض النظر عن موضعها
columnIntegerالعمود الأول من النطاق المستهدَف
columnEndIntegerعمود نهاية النطاق المستهدَف.
rowIntegerصف بداية النطاق المستهدَف.
rowEndIntegerصف نهاية النطاق المستهدَف.

التفويض

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

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

انظر أيضًا


copyFormatToRange(sheet, column, columnEnd, row, rowEnd)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const source = ss.getSheets()[0];
const destination = ss.getSheets()[1];

const range = source.getRange('B2:D4');

// This copies the formatting in B2:D4 in the source sheet to
// D4:F6 in the second sheet
range.copyFormatToRange(destination, 4, 6, 4, 6);

المعلَمات

الاسمالنوعالوصف
sheetSheetورقة البيانات المستهدفة
columnIntegerالعمود الأول من النطاق المستهدَف
columnEndIntegerعمود نهاية النطاق المستهدَف.
rowIntegerصف بداية النطاق المستهدَف.
rowEndIntegerصف نهاية النطاق المستهدَف.

التفويض

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

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

copyTo(destination)

تنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر. يتم نسخ كلّ من القيم والتنسيق.

// The code below copies the first 5 columns over to the 6th column.
const sheet = SpreadsheetApp.getActiveSheet();
const rangeToCopy = sheet.getRange(1, 1, sheet.getMaxRows(), 5);
rangeToCopy.copyTo(sheet.getRange(1, 6));

المعلَمات

الاسمالنوعالوصف
destinationRangeنطاق الوجهة الذي سيتمّ النسخ إليه، ولا يهمّ سوى موضع الخلية في أعلى يمين الصفحة.

التفويض

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

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

copyTo(destination, copyPasteType, transposed)

تنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر.

// The code below copies only the values of the first 5 columns over to the 6th
// column.
const sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange('A:E').copyTo(
    sheet.getRange('F1'),
    SpreadsheetApp.CopyPasteType.PASTE_VALUES,
    false,
);

المعلَمات

الاسمالنوعالوصف
destinationRangeنطاق الوجهة الذي سيتمّ النسخ إليه، ولا يهمّ سوى موضع الخلية في أعلى يمين الصفحة.
copyPasteTypeCopyPasteTypeنوع يحدّد كيفية لصق محتوى النطاق في الوجهة
transposedBooleanما إذا كان يجب لصق النطاق في اتجاهه المُحوَّل

التفويض

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

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

copyTo(destination, options)

تنسخ البيانات من نطاق خلايا إلى نطاق خلايا آخر. يتم تلقائيًا نسخ القيم و التنسيق، ولكن يمكن إلغاء ذلك باستخدام الوسيطات المتقدّمة.

// The code below copies only the values of the first 5 columns over to the 6th
// column.
const sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange('A:E').copyTo(sheet.getRange('F1'), {contentsOnly: true});

المعلَمات

الاسمالنوعالوصف
destinationRangeنطاق الوجهة الذي سيتمّ النسخ إليه، ولا يهمّ سوى موضع الخلية في أعلى يمين الصفحة.
optionsObjectكائن JavaScript يحدّد المَعلمات المتقدّمة كما هو موضّح أدناه

المعلمات المتقدمة

الاسمالنوعالوصف
formatOnlyBooleanتشير إلى أنّه يجب نسخ التنسيق فقط
contentsOnlyBooleanتشير إلى أنّه يجب نسخ المحتوى فقط

التفويض

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

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

copyValuesToRange(gridId, column, columnEnd, row, rowEnd)

نسخ محتوى النطاق إلى الموقع المحدَّد إذا كان النطاق المقصود أكبر أو أصغر من نطاق المصدر، يتم تكرار المصدر أو اقتطاعه وفقًا لذلك.

للحصول على وصف مفصّل للمَعلمة gridId، يُرجى الاطّلاع على getGridId().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const source = ss.getSheets()[0];

const range = source.getRange('B2:D4');

// This copies the data in B2:D4 in the source sheet to
// D4:F6 in the sheet with gridId 0
range.copyValuesToRange(0, 4, 6, 4, 6);

المعلَمات

الاسمالنوعالوصف
gridIdIntegerالمعرّف الفريد للورقة ضمن جدول البيانات، بغض النظر عن موضعها
columnIntegerالعمود الأول من النطاق المستهدَف
columnEndIntegerعمود نهاية النطاق المستهدَف.
rowIntegerصف بداية النطاق المستهدَف.
rowEndIntegerصف نهاية النطاق المستهدَف.

التفويض

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

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

انظر أيضًا


copyValuesToRange(sheet, column, columnEnd, row, rowEnd)

نسخ محتوى النطاق إلى الموقع المحدَّد إذا كان النطاق المقصود أكبر أو أصغر من نطاق المصدر، يتم تكرار المصدر أو اقتطاعه وفقًا لذلك.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const source = ss.getSheets()[0];
const destination = ss.getSheets()[1];

const range = source.getRange('B2:D4');

// This copies the data in B2:D4 in the source sheet to
// D4:F6 in the second sheet
range.copyValuesToRange(destination, 4, 6, 4, 6);

المعلَمات

الاسمالنوعالوصف
sheetSheetورقة البيانات المستهدفة
columnIntegerالعمود الأول من النطاق المستهدَف
columnEndIntegerعمود نهاية النطاق المستهدَف.
rowIntegerصف بداية النطاق المستهدَف.
rowEndIntegerصف نهاية النطاق المستهدَف.

التفويض

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

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

createDataSourcePivotTable(dataSource)

تُنشئ هذه الدالة جدولاً محوريًا فارغًا لمصدر البيانات من مصدر البيانات، ويتم تثبيته في الخلية الأولى في هذا النطاق.

يوضِّح هذا المثال كيفية إنشاء جدول محوري جديد لمصدر بيانات وضبطه.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const anchorCell = spreadsheet.getSheets()[0].getRange('A1');
const dataSource = spreadsheet.getDataSources()[0];

const pivotTable = anchorCell.createDataSourcePivotTable(dataSource);
pivotTable.addRowGroup('dataColumnA');
pivotTable.addColumnGroup('dataColumnB');
pivotTable.addPivotValue(
    'dataColumnC',
    SpreadsheetApp.PivotTableSummarizeFunction.SUM,
);
pivotTable.addFilter(
    'dataColumnA',
    SpreadsheetApp.newFilterCriteria().whenTextStartsWith('A').build(),
);

المعلَمات

الاسمالنوعالوصف
dataSourceDataSourceمصدر البيانات الذي سيتم إنشاء الجدول المحوري منه.

الإرجاع

DataSourcePivotTable: الجدول المحوري لمصدر البيانات الذي تم إنشاؤه حديثًا

التفويض

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

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

createDataSourceTable(dataSource)

تُنشئ هذه الدالة جدول مصدر بيانات فارغًا من مصدر البيانات، ويتم تثبيته في أول خلية في هذا النطاق.

يوضِّح هذا المثال كيفية إنشاء جدول مصدر بيانات جديد وضبطه.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const anchorCell = spreadsheet.getSheets()[0].getRange('A1');
const dataSource = spreadsheet.getDataSources()[0];

const dataSourceTable =
    anchorCell.createDataSourceTable(dataSource)
        .addColumns('dataColumnA', 'dataColumnB', 'dataColumnC')
        .addSortSpec('dataColumnA', true)    // ascending=true
        .addSortSpec('dataColumnB', false);  // ascending=false

المعلَمات

الاسمالنوعالوصف
dataSourceDataSourceمصدر البيانات الذي سيتم إنشاء الجدول المحوري منه.

الإرجاع

DataSourceTable: جدول مصدر البيانات الذي تم إنشاؤه حديثًا.

التفويض

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

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

createDeveloperMetadataFinder()

تعرِض هذه السمة واجهة برمجة تطبيقات DeveloperMetadataFinderApi للعثور على البيانات الوصفية للمطوّر في نطاق هذا النطاق. لا تكون البيانات الوصفية ضمن نطاق النطاق إلا إذا كانت مضمّنة بالكامل في هذا النطاق. على سبيل المثال، البيانات الوصفية المرتبطة بالصف "3:3" ليست ضمن نطاق "A1:D5"، ولكنها ضمن نطاق "1:5".

// 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 the range A1:C6.
const range = sheet.getRange('A1:C6');

// Creates a developer metadata finder to search for metadata in the scope of
// this range.
const developerMetaDataFinder = range.createDeveloperMetadataFinder();

// Logs information about the developer metadata finder to the console.
const developerMetaData = developerMetaDataFinder.find()[0];
console.log(developerMetaData.getKey());
console.log(developerMetaData.getValue());
console.log(developerMetaData.getVisibility().toString());

الإرجاع

DeveloperMetadataFinder - أداة بحث عن البيانات الوصفية لمطوّر البرامج للبحث عن البيانات الوصفية في نطاق هذا النطاق


createFilter()

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

const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');

// Creates a new filter and applies it to the range A1:C20 on the active sheet.
function createFilter() {
  range.createFilter();
}
// Gets the filter and applies criteria that only shows cells that aren't empty.
function getFilterAddCriteria() {
  const filter = range.getFilter();
  const criteria =
      SpreadsheetApp.newFilterCriteria().whenCellNotEmpty().build();
  filter.setColumnFilterCriteria(2, criteria);
}
استخدِم هذه الطريقة لإنشاء فلاتر لجداول Grid، وهو النوع التلقائي للجدول. أوراق البيانات المصفوفة هي أوراق بيانات غير مرتبطة بقاعدة بيانات. لإنشاء أنواع أخرى من الفلاتر، يُرجى الرجوع إلى ما يلي:

الإرجاع

Filter: الفلتر الجديد

التفويض

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

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

createPivotTable(sourceData)

تنشئ هذه الدالة جدولاً محوريًا فارغًا من sourceData المحدّد والمرسَخ في الخلية الأولى في هذا النطاق.

// 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 as a range in order to place the pivot table.
const range = sheet.getRange('A1');

// Gets the range of the source data for the pivot table.
const dataRange = sheet.getRange('E12:G20');

// Creates an empty pivot table from the specified source data.
const pivotTable = range.createPivotTable(dataRange);

// Logs the values from the pivot table's source data to the console.
console.log(pivotTable.getSourceDataRange().getValues());

المعلَمات

الاسمالنوعالوصف
sourceDataRangeالبيانات التي سيتم إنشاء الجدول المحوري منها

الإرجاع

PivotTable: PivotTable الذي تم إنشاؤه حديثًا.

التفويض

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

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

createTextFinder(findText)

تُنشئ أداة البحث عن النصوص للنطاق، والتي يمكنها البحث عن النص واستبداله في هذا النطاق.

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getActiveRange();

// Creates  a text finder for the range.
const textFinder = range.createTextFinder('dog');

// Returns the first occurrence of 'dog'.
const firstOccurrence = textFinder.findNext();

// Replaces the last found occurrence of 'dog' with 'cat' and returns the number
// of occurrences replaced.
const numOccurrencesReplaced = textFinder.replaceWith('cat');

المعلَمات

الاسمالنوعالوصف
findTextStringالنص المطلوب البحث عنه

الإرجاع

TextFinder: TextFinder للنطاق


deleteCells(shiftDimension)

يؤدي إلى حذف نطاق الخلايا هذا. يتم نقل البيانات الحالية في ورقة البيانات على طول السمة المقدَّمة باتجاه النطاق المحذوف.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.deleteCells(SpreadsheetApp.Dimension.COLUMNS);

المعلَمات

الاسمالنوعالوصف
shiftDimensionDimensionالسمة التي يتمّ نقل البيانات الحالية على طولها

التفويض

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

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

expandGroups()

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

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getActiveRange();

// All row and column groups within the range are expanded.
range.expandGroups();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

getA1Notation()

لعرض وصف سلسلة للنطاق، بترميز A1.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange(1, 1, 2, 5);

// Logs "A1:E2"
Logger.log(range.getA1Notation());

الإرجاع

String: وصف السلسلة للنطاق بترميز A1

التفويض

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

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

getBackground()

عرض لون خلفية الخلية في أعلى يمين النطاق (على سبيل المثال، '#ffffff')

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B5');
Logger.log(cell.getBackground());

الإرجاع

String: رمز لون الخلفية.

التفويض

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

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

getBackgroundObject()

لعرض لون خلفية الخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B5');
Logger.log(cell.getBackgroundObject().asRgbColor().asHexString());

الإرجاع

Color: لون خلفية الخلية في أعلى يمين النطاق

التفويض

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

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

getBackgroundObjects()

لعرض ألوان خلفية الخلايا في النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5:C6');
const bgColors = range.getBackgroundObjects();
for (const i in bgColors) {
  for (const j in bgColors[i]) {
    Logger.log(bgColors[i][j].asRgbColor().asHexString());
  }
}

الإرجاع

Color[][]: صفيف ثنائي الأبعاد من ألوان الخلفية

التفويض

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

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

getBackgrounds()

لعرض ألوان خلفية الخلايا في النطاق (على سبيل المثال، '#ffffff').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5:C6');
const bgColors = range.getBackgrounds();
for (const i in bgColors) {
  for (const j in bgColors[i]) {
    Logger.log(bgColors[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد لرموز ألوان الخلفيات

التفويض

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

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

getBandings()

عرض جميع النطاقات التي تم تطبيقها على أي خلايا في هذا النطاق

// 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 a range.
const range = sheet.getRange('A1:K50');

// Gets the banding info for the range.
const bandings = range.getBandings();

// Logs the second row color for each banding to the console.
for (const banding of bandings) {
  console.log(banding.getSecondRowColor());
}

الإرجاع

Banding[]: جميع النطاقات التي تم تطبيقها على أي خلايا في هذا النطاق

التفويض

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

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

getCell(row, column)

لعرض خلية معيّنة ضمن نطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D4');

// The row and column here are relative to the range
// getCell(1,1) in this code returns the cell at B2
const cell = range.getCell(1, 1);
Logger.log(cell.getValue());

المعلَمات

الاسمالنوعالوصف
rowIntegerصف الخلية بالنسبة إلى النطاق
columnIntegerعمود الخلية بالنسبة إلى النطاق

الإرجاع

Range: نطاق يحتوي على خلية واحدة في الإحداثيات المحدّدة

التفويض

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

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

getColumn()

تعرِض هذه الدالة موضع العمود الأول لهذا النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D4');
// Logs "2.0"
Logger.log(range.getColumn());

الإرجاع

Integer: موضع عمود بداية النطاق في جدول البيانات

التفويض

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

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

getDataRegion()

تعرض نسخة من النطاق الموسَّع في الاتجاهات الأربعة الرئيسية Direction لتغطية كل الخلايا المجاورة التي تحتوي على بيانات. إذا كان النطاق محاطًا بخلايا فارغة لا تشمل تلك على طول الأقطار، يتم عرض النطاق نفسه. يشبه ذلك اختيار النطاق و كتابة Ctrl+A في المحرِّر.

// Assume the active spreadsheet is blank.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
sheet.getRange('C2').setValue(100);
sheet.getRange('B3').setValue(100);
sheet.getRange('D3').setValue(100);
sheet.getRange('C4').setValue(100);
// Logs "B2:D4"
Logger.log(sheet.getRange('C3').getDataRegion().getA1Notation());

الإرجاع

Range: منطقة بيانات النطاق أو نطاق لجدول البيانات بأكمله.

التفويض

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

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

getDataRegion(dimension)

لعرض نسخة من النطاق الموسّع Direction.UP وDirection.DOWN إذا كان السمة المحدّدة هي Dimension.ROWS، أو Direction.NEXT وDirection.PREVIOUS إذا كانت السمة هي Dimension.COLUMNS. يستند توسيع النطاق إلى رصد البيانات بجانب النطاق المنظَّم كجدول. يشمل النطاق الموسَّع جميع الخلايا المجاورة التي تحتوي على بيانات على طول السمة المحدّدة، بما في ذلك حدود الجدول. إذا كان النطاق الأصلي محاطًا بخلايا فارغة على طول السمة المحدّدة، يتم عرض النطاق نفسه. تشبه هذه الطريقة اختيار النطاق وكتابة Ctrl+Space للأعمدة أو Shift+Space للصفوف في المحرِّر.

// Assume the active spreadsheet is blank.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
sheet.getRange('C2').setValue(100);
sheet.getRange('B3').setValue(100);
sheet.getRange('D3').setValue(100);
sheet.getRange('C4').setValue(100);
// Logs "C2:C4"
Logger.log(
    sheet.getRange('C3')
        .getDataRegion(SpreadsheetApp.Dimension.ROWS)
        .getA1Notation(),
);
// Logs "B3:D3"
Logger.log(
    sheet.getRange('C3')
        .getDataRegion(SpreadsheetApp.Dimension.COLUMNS)
        .getA1Notation(),
);

المعلَمات

الاسمالنوعالوصف
dimensionDimensionالسمة التي يتم توسيع النطاق على أساسها

الإرجاع

Range: منطقة بيانات النطاق أو نطاق يغطي كل عمود أو كل صف يشمله النطاق الأصلي.

التفويض

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

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

getDataSourceFormula()

تعرض DataSourceFormula للخلية الأولى في النطاق، أو null إذا كانت الخلية لا تحتوي على صيغة مصدر بيانات.

// 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 Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

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

// Gets the data source formula from cell A1.
const dataSourceFormula = range.getDataSourceFormula();

// Gets the formula.
const formula = dataSourceFormula.getFormula();

// Logs the formula.
console.log(formula);

الإرجاع

DataSourceFormula: DataSourceFormula للخلية

التفويض

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

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

getDataSourceFormulas()

لعرض DataSourceFormula للخلايا في النطاق.

// 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 Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Gets the range A1:B5 on Sheet1.
const range = sheet.getRange('A1:B5');

// Gets an array of the data source formulas in the range A1:B5.
const dataSourceFormulas = range.getDataSourceFormulas();

// Logs the first formula in the array.
console.log(dataSourceFormulas[0].getFormula());

الإرجاع

DataSourceFormula[]: مصفوفة من DataSourceFormula

التفويض

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

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

getDataSourcePivotTables()

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

// 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 Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Gets the range A1:G50 on Sheet1.
const range = sheet.getRange('A1:G50');

// Gets an array of the data source pivot tables in the range A1:G50.
const dataSourcePivotTables = range.getDataSourcePivotTables();

// Logs the last time that the first pivot table in the array was refreshed.
console.log(dataSourcePivotTables[0].getStatus().getLastRefreshedTime());

الإرجاع

DataSourcePivotTable[]: قائمة بالجداول المحورية لمصدر البيانات

التفويض

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

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

getDataSourceTables()

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

// 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 Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Gets the range A1:G50 on Sheet1.
const range = sheet.getRange('A1:G50');

// Gets the first data source table in the range A1:G50.
const dataSourceTable = range.getDataSourceTables()[0];

// Logs the time of the last completed data execution on the data source table.
console.log(dataSourceTable.getStatus().getLastExecutionTime());

الإرجاع

DataSourceTable[]: قائمة بجداول مصادر البيانات

التفويض

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

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

getDataSourceUrl()

تعرِض هذه الدالة عنوان URL للبيانات في هذا النطاق، ويمكن استخدامها لإنشاء الرسوم البيانية وطلبات البحث.

Code.gs

function doGet() {
  const ss = SpreadsheetApp.openById(
      '1khO6hBWTNNyvyyxvob7aoZTI9ZvlqqASNeq0e29Tw2c',
  );
  const sheet = ss.getSheetByName('ContinentData');
  const range = sheet.getRange('A1:B8');

  const template = HtmlService.createTemplateFromFile('piechart');
  template.dataSourceUrl = range.getDataSourceUrl();
  return template.evaluate();
}

piechart.html

<!DOCTYPE html>
<html>
  <head>
    <!--Load the AJAX API-->
    <script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
    <script type="text/javascript">
      // Load the Visualization API and the corechart package.
      google.charts.load('current', {'packages': ['corechart']});

      // Set a callback to run when the Google Visualization API is loaded.
      google.charts.setOnLoadCallback(queryData);

      function queryData() {
        var query = new google.visualization.Query('<?= dataSourceUrl ?>');
        query.send(drawChart);
      }

      // Callback that creates and populates a data table,
      // instantiates the pie chart, passes in the data and
      // draws it.
      function drawChart(response) {
        if (response.isError()) {
          alert('Error: ' + response.getMessage() + ' ' + response.getDetailedMessage());
          return;
        }
        var data = response.getDataTable();

        // Set chart options.
        var options = {
          title: 'Population by Continent',
          width: 400,
          height: 300
        };

        // Instantiate and draw the chart, passing in some options.
        var chart = new google.visualization.PieChart(document.getElementById('chart_div'));
        chart.draw(data, options);
      }
    </script>
  </head>
  <body>
    <!-- Div that holds the pie chart. -->
    <div id="chart_div"></div>
  </body>
</html>

الإرجاع

String: عنوان URL لهذا النطاق كمصدر بيانات يمكن تمريره إلى واجهات برمجة تطبيقات أخرى، مثل الرسوم البيانية.

التفويض

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

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

getDataTable()

عرض البيانات داخل هذا العنصر كجدول بيانات

// 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 Sheet1 by its name.
const sheet = ss.getSheetByName('Sheet1');

// Gets the range A1:B7 on Sheet1.
const range = sheet.getRange('A1:B7');

// Gets the range A1:B7 as a data table. The values in each column must be of
// the same type.
const datatable = range.getDataTable();

// Uses the Charts service to build a bar chart from the data table.
// This doesn't build an embedded chart. To do that, use
// sheet.newChart().addRange() instead.
const chart = Charts.newBarChart()
                  .setDataTable(datatable)
                  .setOption('title', 'Your Chart Title Here')
                  .build();

الإرجاع

DataTable: البيانات كجدول بيانات


getDataTable(firstRowIsHeader)

عرض البيانات داخل هذا النطاق كجدول بيانات

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('A1:B7');

// Calling this method with "true" sets the first line to be the title of the
// axes
const datatable = range.getDataTable(true);

// Note that this doesn't build an EmbeddedChart, so you can't just use
// Sheet#insertChart(). To do that, use sheet.newChart().addRange() instead.
const chart = Charts.newBarChart()
                  .setDataTable(datatable)
                  .setOption('title', 'Your Title Here')
                  .build();

المعلَمات

الاسمالنوعالوصف
firstRowIsHeaderBooleanما إذا كان سيتم التعامل مع الصف الأول كعنوان

الإرجاع

DataTable: البيانات كجدول بيانات

التفويض

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

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

getDataValidation()

عرض قاعدة التحقّق من صحة البيانات للخلية في أعلى يمين النطاق إذا لم يتم ضبط ميزة التحقّق من صحة البيانات في الخلية، تعرض هذه الطريقة القيمة null.

// Log information about the data validation rule for cell A1.
const cell = SpreadsheetApp.getActive().getRange('A1');
const rule = cell.getDataValidation();
if (rule != null) {
  const criteria = rule.getCriteriaType();
  const args = rule.getCriteriaValues();
  Logger.log('The data validation rule is %s %s', criteria, args);
} else {
  Logger.log('The cell does not have a data validation rule.');
}

الإرجاع

DataValidation: قاعدة التحقّق من صحة البيانات للخلية في أعلى يمين النطاق

التفويض

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

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

getDataValidations()

تعرِض قواعد التحقّق من صحة البيانات لجميع الخلايا في النطاق. إذا لم يتم ضبط ميزة التحقّق من صحة البيانات في خلية معيّنة، تعرض هذه الطريقة القيمة null لموضع تلك الخلية في المصفوفة.

// Change existing data validation rules that require a date in 2013 to require
// a date in 2014.
const oldDates = [new Date('1/1/2013'), new Date('12/31/2013')];
const newDates = [new Date('1/1/2014'), new Date('12/31/2014')];
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange(1, 1, sheet.getMaxRows(), sheet.getMaxColumns());
const rules = range.getDataValidations();

for (let i = 0; i < rules.length; i++) {
  for (let j = 0; j < rules[i].length; j++) {
    const rule = rules[i][j];

    if (rule != null) {
      const criteria = rule.getCriteriaType();
      const args = rule.getCriteriaValues();

      if (criteria === SpreadsheetApp.DataValidationCriteria.DATE_BETWEEN &&
          args[0].getTime() === oldDates[0].getTime() &&
          args[1].getTime() === oldDates[1].getTime()) {
        // Create a builder from the existing rule, then change the dates.
        rules[i][j] = rule.copy().withCriteria(criteria, newDates).build();
      }
    }
  }
}
range.setDataValidations(rules);

الإرجاع

DataValidation[][]: صفيف ثنائي الأبعاد لقواعد التحقّق من صحة البيانات المرتبطة بالخلايا في النطاق

التفويض

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

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

getDeveloperMetadata()

تحصل على البيانات الوصفية للمطوّر المرتبطة بهذا النطاق.

// 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 row 2 on Sheet1.
const range = sheet.getRange('2:2');

// Adds metadata to row 2.
range.addDeveloperMetadata('NAME', 'GOOGLE');

// Logs the metadata to console.
for (const metadata of range.getDeveloperMetadata()) {
  console.log(`${metadata.getKey()}: ${metadata.getValue()}`);
}

الإرجاع

DeveloperMetadata[]: البيانات الوصفية للمطوّر المرتبطة بهذا النطاق

التفويض

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

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

getDisplayValue()

لعرض القيمة المعروضة للخلية في أعلى يمين النطاق. القيمة هي String. تراعي القيمة المعروضة تنسيق التاريخ والوقت والعملة، بما في ذلك التنسيقات التي يتم تطبيقها تلقائيًا من خلال إعدادات لغة جدول البيانات. تعرِض الخلايا الفارغة سلسلة فارغة.

// 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 A30 and sets its value to 'Test code.'
const cell = sheet.getRange('A30');
cell.setValue('Test code');

// Gets the value and logs it to the console.
console.log(cell.getDisplayValue());

الإرجاع

String: القيمة المعروضة في هذه الخلية.

التفويض

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

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

getDisplayValues()

لعرض شبكة مستطيلة من القيم لهذا النطاق.

تعرض صفيفًا ثنائي الأبعاد من القيم المعروضة، مفهرَسًا حسب الصف ثم حسب العمود. تشكل القيم كائنات String. تأخذ القيمة المعروضة في الاعتبار تنسيق التاريخ والوقت والعملة، بما في ذلك التنسيقات التي يتم تطبيقها تلقائيًا من خلال إعداد لغة جدول البيانات. يتم تمثيل الخلايا الفارغة بسلسلة فارغة في الصفيف. تذكَّر أنّه على الرغم من أنّفهرس النطاق يبدأ من 1, 1، يتم فهرسة مصفوفة JavaScript من [0][0].

// The code below gets the displayed values for the range C2:G8
// in the active spreadsheet.  Note that this is a JavaScript array.
const values =
    SpreadsheetApp.getActiveSheet().getRange(2, 3, 6, 4).getDisplayValues();
Logger.log(values[0][0]);

الإرجاع

String[][]: صفيف ثنائي الأبعاد من القيم

التفويض

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

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

getFilter()

عرض الفلتر في الورقة التي ينتمي إليها هذا النطاق، أو null في حال عدم توفّر فلتر في الورقة

const ss = SpreadsheetApp.getActiveSheet();
const range = ss.getRange('A1:C20');
// Gets the existing filter on the sheet that the given range belongs to.
const filter = range.getFilter();

الإرجاع

Filter: الفلتر

التفويض

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

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

getFontColorObject()

لعرض لون الخط للخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontColorObject().asRgbColor().asHexString());

الإرجاع

Color: لون خط الخلية في أعلى يمين النطاق

التفويض

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

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

getFontColorObjects()

لعرض ألوان خطوط الخلايا في النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontColorObjects();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j].asRgbColor().asHexString());
  }
}

الإرجاع

Color[][]: صفيف ثنائي الأبعاد من ألوان الخطوط المرتبطة بالخلايا في النطاق

التفويض

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

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

getFontFamilies()

لعرض مجموعات خطوط الخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontFamilies();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد من عائلات الخطوط المرتبطة بالخلايا في النطاق

التفويض

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

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

getFontFamily()

لعرض مجموعة خطوط الخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontFamily());

الإرجاع

String: مجموعة خطوط الخلية.

التفويض

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

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

getFontLine()

تحصل على نمط الخط للخلية في أعلى يمين النطاق ('underline' أو 'line-through' أو 'none').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontLine());

الإرجاع

String - خط الخط

التفويض

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

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

getFontLines()

تحصل على نمط السطر للخلايا في النطاق ('underline' أو 'line-through' أو 'none').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontLines();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: مصفوفة ثنائية الأبعاد من خطوط الخطوط المرتبطة بالخلايا في النطاق

التفويض

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

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

getFontSize()

لعرض حجم الخط بوحدة النقطة للخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontSize());

الإرجاع

Integer: حجم الخط بوحدة النقطة

التفويض

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

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

getFontSizes()

لعرض أحجام الخطوط للخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontSizes();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

Integer[][]: صفيف ثنائي الأبعاد لحجم الخطوط للنص المرتبط بالخلايا في النطاق

التفويض

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

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

getFontStyle()

عرض نمط الخط ('italic' أو 'normal') للخلية في أعلى يمين النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontStyle());

الإرجاع

String: نمط خط النص في الخلية

التفويض

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

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

getFontStyles()

لعرض أنماط الخطوط للخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontStyles();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد لأنماط الخطوط للنص المرتبط بالخلايا في النطاق

التفويض

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

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

getFontWeight()

لعرض وزن الخط (عادي/غامق) للخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getFontWeight());

الإرجاع

String: كثافة خط النص في الخلية

التفويض

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

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

getFontWeights()

لعرض كثافة الخط للخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getFontWeights();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد لدرجات خط النص المرتبط بالخلايا في النطاق

التفويض

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

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

getFormula()

تعرِض هذه الدالة الصيغة (نمط A1) للخلية في أعلى يمين النطاق، أو سلسلة فارغة إذا كانت الخلية فارغة أو لا تحتوي على صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// This assumes you have a function in B5 that sums up
// B2:B4
const range = sheet.getRange('B5');

// Logs the calculated value and the formula
Logger.log(
    'Calculated value: %s Formula: %s',
    range.getValue(),
    range.getFormula(),
);

الإرجاع

String: صيغة الخلية

التفويض

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

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

getFormulaR1C1()

تعرِض هذه الدالة الصيغة (ترميز R1C1) لخلية معيّنة، أو null إذا لم تكن هناك صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5');
const formula = range.getFormulaR1C1();
Logger.log(formula);

الإرجاع

String: الصيغة بترميز R1C1

التفويض

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

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

getFormulas()

لعرض الصِيَغ (نمط A1) للخلايا في النطاق الإدخالات في الصفيف ثنائي الأبعاد هي سلاسل فارغة للخلايا التي لا تحتوي على صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5:C6');
const formulas = range.getFormulas();
for (const i in formulas) {
  for (const j in formulas[i]) {
    Logger.log(formulas[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد من الصِيَغ بتنسيق سلسلة.

التفويض

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

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

getFormulasR1C1()

لعرض الصِيَغ (ترميز R1C1) للخلايا في النطاق الإدخالات في الصفيف ثنائي الأبعاد هي null للخلايا التي لا تحتوي على صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5:C6');
const formulas = range.getFormulasR1C1();
for (const i in formulas) {
  for (const j in formulas[i]) {
    Logger.log(formulas[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد من الصِيَغ بترميز R1C1

التفويض

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

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

getGridId()

لعرض رقم تعريف الشبكة لجدول الأركان الأساسية للنطاق المعرّفات هي قيم عشوائية صحيحة غير سالبة.

// Log the grid ID of the first sheet (by tab position) in the spreadsheet.
const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getGridId());

الإرجاع

Integer: رقم تعريف الشبكة للجدول الرئيسي

التفويض

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

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

getHeight()

لعرض ارتفاع النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D4');
// logs 3.0
Logger.log(range.getHeight());

الإرجاع

Integer: ارتفاع النطاق

التفويض

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

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

getHorizontalAlignment()

عرض المحاذاة الأفقية للنص (يمين/وسط/يسار) للخلية في الركن العلوي الأيمن من النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getHorizontalAlignment());

الإرجاع

String: المحاذاة الأفقية للنص في الخلية

التفويض

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

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

getHorizontalAlignments()

لعرض المحاذاة الأفقية للخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getHorizontalAlignments();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: مصفوفة ثنائية الأبعاد من المحاذاة الأفقية للنص المرتبط بالخلايا في النطاق

التفويض

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

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

getLastColumn()

تعرِض موضع العمود الأخير.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D4');
// Logs "4.0"
Logger.log(range.getLastColumn());

الإرجاع

Integer - موضع عمود نهاية النطاق في جدول البيانات.

التفويض

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

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

getLastRow()

لعرض موضع الصف الأخير.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D4');
// Logs "4.0"
Logger.log(range.getLastRow());

الإرجاع

Integer: موضع صف نهاية النطاق في جدول البيانات

التفويض

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

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

getMergedRanges()

لعرض صفيف من عناصر Range تمثّل الخلايا المدمجة التي تكون بالكامل ضمن النطاق الحالي، أو تحتوي على خلية واحدة على الأقل في النطاق الحالي.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B3');

const mergedRanges = range.getMergedRanges();
for (let i = 0; i < mergedRanges.length; i++) {
  Logger.log(mergedRanges[i].getA1Notation());
  Logger.log(mergedRanges[i].getDisplayValue());
}

الإرجاع

Range[]: مصفوفة من عناصر Range، تمثّل الخلايا المدمجة التي تتداخل مع النطاق


getNextDataCell(direction)

بدءًا من الخلية في أول عمود وصف من النطاق، تعرض هذه الدالة الخلية التالية في الاتجاه المحدَّد، وهي حافة نطاق متّصل من الخلايا التي تحتوي على بيانات أو الخلية عند حافة جدول البيانات في هذا الاتجاه. ويعادل ذلك كتابة Ctrl+[arrow key] في المحرِّر.

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

const range = sheet.getRange('C3:E5');
// Logs "C1"
Logger.log(range.getNextDataCell(SpreadsheetApp.Direction.UP).getA1Notation());

المعلَمات

الاسمالنوعالوصف
directionDirectionالاتجاه الذي يتم فيه العثور على خلية حافة منطقة البيانات التالية.

الإرجاع

Range: خلية حافة منطقة البيانات أو الخلية على حافة جدول البيانات

التفويض

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

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

getNote()

لعرض ملاحظة مرتبطة بالنطاق المحدّد.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getNote());

الإرجاع

String: الملاحظة المرتبطة بالخلية المحدّدة

التفويض

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

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

getNotes()

لعرض الملاحظات المرتبطة بالخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getNotes();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: مصفوفة ثنائية الأبعاد من الملاحظات المرتبطة بالخلايا في النطاق

التفويض

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

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

getNumColumns()

لعرض عدد الأعمدة في هذا النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D5');
Logger.log(range.getNumColumns());

الإرجاع

Integer: عدد الأعمدة في هذا النطاق

التفويض

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

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

getNumRows()

لعرض عدد الصفوف في هذا النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D5');
Logger.log(range.getNumRows());

الإرجاع

Integer: عدد الصفوف في هذا النطاق

التفويض

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

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

getNumberFormat()

الحصول على تنسيق الرقم أو التاريخ للخلية في أعلى يمين النطاق المحدّد يمكنك الاطّلاع على أنماط التنسيق المعروضة في مستندات Sheets API.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('C4');
Logger.log(cell.getNumberFormat());

الإرجاع

String: تنسيق الأرقام للخلية في أعلى يمين النطاق

التفويض

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

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

getNumberFormats()

لعرض تنسيقات الأرقام أو التواريخ للخلايا في النطاق. يتم وصف أنماط التنسيق المعروضة في مستندات Sheets API.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B5:C6');
const formats = range.getNumberFormats();
for (const i in formats) {
  for (const j in formats[i]) {
    Logger.log(formats[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد لتنسيقات الأرقام

التفويض

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

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

getRichTextValue()

تعرِض هذه الدالة قيمة نص تنسيق RTF للخلية في أعلى يمين النطاق، أو null إذا لم تكن قيمة الخلية نصًا.

// Gets the Rich Text value of cell D4.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('D4:F6');
const richText = range.getRichTextValue();
console.log(richText.getText());

الإرجاع

RichTextValue: قيمة النص المنسق للخلية في أعلى يمين النطاق، أو null إذا كانت قيمة الخلية ليست نصًا.

التفويض

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

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

getRichTextValues()

لعرض قيم النصوص المنسَّقة للخلايا في النطاق.

// Gets the Rich Text values for all cells in range B5:C6
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B5:C6');
const values = range.getRichTextValues();

for (let i = 0; i < values.length; i++) {
  for (let j = 0; j < values[i].length; j++) {
    console.log(values[i][j].getText());
  }
}

الإرجاع

RichTextValue[][]: صفيف ثنائي الأبعاد من قيم النص المنسَّق

التفويض

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

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

getRow()

تعرِض هذه الدالة موضع الصف لهذا النطاق. متطابقة مع getRowIndex().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2');
Logger.log(range.getRow());

الإرجاع

Integer: موضع الصف للنطاق

التفويض

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

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

getRowIndex()

تعرِض هذه الدالة موضع الصف لهذا النطاق. متطابقة مع getRow().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2');
Logger.log(range.getRowIndex());

الإرجاع

Integer: موضع الصف للنطاق

التفويض

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

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

انظر أيضًا


getSheet()

تعرِض هذه الدالة ورقة البيانات التي ينتمي إليها هذا النطاق.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Gets the sheet that the range belongs to.
const rangeSheet = range.getSheet();

// Gets the sheet name and logs it to the console.
console.log(rangeSheet.getName());

الإرجاع

Sheet: ورقة البيانات التي ينتمي إليها هذا النطاق

التفويض

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

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

getTextDirection()

عرض اتجاه النص للخلية في أعلى يمين النطاق تعرِض القيمة null إذا تم تحديد اتجاه النص في الخلية من خلال ميزة الرصد التلقائي.

// Get the text direction of cell B1.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B1:D4');
Logger.log(range.getTextDirection());

الإرجاع

TextDirection: اتجاه النص للخلية في أعلى يمين النطاق

التفويض

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

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

getTextDirections()

لعرض اتجاهات النص للخلايا في النطاق. الإدخالات في الصفيف ثنائي الأبعاد هي null للخلايا التي تستخدم ميزة "الاكتشاف التلقائي".

// Get the text directions for all cells in range B5:C6
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B5:C6');
const directions = range.getTextDirections();

for (let i = 0; i < directions.length; i++) {
  for (let j = 0; j < directions[i].length; j++) {
    Logger.log(directions[i][j]);
  }
}

الإرجاع

TextDirection[][]: صفيف ثنائي الأبعاد للاتجاهات النصية

التفويض

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

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

getTextRotation()

تعرض إعدادات تدوير النص للخلية في أعلى يمين النطاق.

// Log the text rotation settings for a cell.
const sheet = SpreadsheetApp.getActiveSheet();

const cell = sheet.getRange('A1');
Logger.log(cell.getTextRotation());

الإرجاع

TextRotation - إعدادات تدوير النص

التفويض

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

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

getTextRotations()

لعرض إعدادات تدوير النص للخلايا في النطاق.

const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B2:D4');

const results = range.getTextRotations();

for (const i in results) {
  for (const j in results[i]) {
    const rotation = results[i][j];
    Logger.log('Cell [%s, %s] has text rotation: %v', i, j, rotation);
  }
}

الإرجاع

TextRotation[][]: صفيف ثنائي الأبعاد من عمليات تدوير النص المرتبطة بالخلايا في النطاق

التفويض

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

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

getTextStyle()

تُعرِض نمط النص للخلية في أعلى يمين النطاق.

// Get the text style of cell D4.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('D4:F6');
const style = range.getTextStyle();
Logger.log(style);

الإرجاع

TextStyle: نمط النص للخلية في أعلى يمين النطاق

التفويض

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

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

getTextStyles()

لعرض أنماط النصوص للخلايا في النطاق

// Get the text styles for all cells in range B5:C6
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B5:C6');
const styles = range.getTextStyles();

for (let i = 0; i < styles.length; i++) {
  for (let j = 0; j < styles[i].length; j++) {
    Logger.log(styles[i][j]);
  }
}

الإرجاع

TextStyle[][]: صفيف ثنائي الأبعاد لأنماط النصوص

التفويض

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

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

getValue()

لعرض قيمة الخلية في أعلى يمين النطاق. قد تكون القيمة من النوع Number أو Boolean أو Date أو String حسب قيمة الخلية. تعرِض الخلايا الفارغة سلسلة فارغة.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Gets the value of the top-left cell in the range and logs it to the console.
console.log(range.getValue());

الإرجاع

Object: القيمة في هذه الخلية.

التفويض

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

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

getValues()

لعرض شبكة مستطيلة من القيم لهذا النطاق.

تعرض صفيفًا ثنائي الأبعاد من القيم، مفهرَسًا حسب الصف، ثم حسب العمود. قد تكون القيم من النوع Number أو Boolean أو Date أو String، وذلك استنادًا إلى قيمة الخلية. يتم تمثيل الخلايا الفارغة بسلسلة فارغة في الصفيف. تذكَّر أنّه في حين يبدأ فهرس النطاق من 1, 1، تتم فهرسة صفيف JavaScript من [0][0].

// The code below gets the values for the range C2:G8
// in the active spreadsheet.  Note that this is a JavaScript array.
const values = SpreadsheetApp.getActiveSheet().getRange(2, 3, 6, 4).getValues();
Logger.log(values[0][0]);
في تطبيقات الويب، لا تكون قيمة Date مَعلمة قانونية. لا يمكن للدالة getValues() عرض البيانات في تطبيق ويب إذا كان النطاق يحتوي على خلية تحتوي على قيمة Date. بدلاً من ذلك، يمكنك تحويل كل القيم التي تم استرجاعها من ورقة البيانات إلى عنصر أساسي متوافق مع JavaScript مثل Number أو Boolean أو String.

الإرجاع

Object[][]: صفيف ثنائي الأبعاد من القيم

التفويض

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

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

getVerticalAlignment()

تعرِض هذه الدالة المحاذاة العمودية (أعلى/وسط/أسفل) للخلية في أعلى يمين النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getVerticalAlignment());

الإرجاع

String: المحاذاة العمودية للنص في الخلية

التفويض

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

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

getVerticalAlignments()

لعرض المحاذاة الرأسية للخلايا في النطاق.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getVerticalAlignments();

for (const i in results) {
  for (const j in results[i]) {
    Logger.log(results[i][j]);
  }
}

الإرجاع

String[][]: صفيف ثنائي الأبعاد لمحاذاة النص عموديًا والمرتبط بالخلايا في النطاق

التفويض

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

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

getWidth()

لعرض عرض النطاق بالأعمدة.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Gets the width of the range in number of columns and logs it to the console.
console.log(range.getWidth());

الإرجاع

Integer: عدد الأعمدة في النطاق

التفويض

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

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

getWrap()

تعرِض ما إذا كان النص في الخلية يتم لفّه. للحصول على استراتيجية لفّ أكثر دقة، استخدِم getWrapStrategy().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.getWrap());

الإرجاع

Boolean: يشير هذا الحقل إلى ما إذا كان النص في هذه الخلية يتم لفّه أم لا.

التفويض

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

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

getWrapStrategies()

لعرض استراتيجيات لف النص للخلايا في النطاق.

// Get the text wrapping strategies for all cells in range B5:C6
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B5:C6');
const strategies = range.getWrapStrategies();

for (let i = 0; i < strategies.length; i++) {
  for (let j = 0; j < strategies[i].length; j++) {
    Logger.log(strategies[i][j]);
  }
}

الإرجاع

WrapStrategy[][]: صفيف ثنائي الأبعاد لاستراتيجيات التفاف النص

التفويض

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

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

getWrapStrategy()

عرض استراتيجية لف النص للخلية في أعلى يمين النطاق

// Get the text wrapping strategy of cell B1.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B1:D4');
Logger.log(range.getWrapStrategy());

الإرجاع

WrapStrategy - استراتيجية لف النص للخلية في أعلى يمين النطاق

التفويض

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

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

getWraps()

تعرِض ما إذا كان النص في الخلايا يتم لفّه. للحصول على استراتيجية لفّ أكثر دقة، استخدِم getWrapStrategies().

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

const results = range.getVerticalAlignments();

for (const i in results) {
  for (const j in results[i]) {
    const isWrapped = results[i][j];
    if (isWrapped) {
      Logger.log('Cell [%s, %s] has wrapped text', i, j);
    }
  }
}

الإرجاع

Boolean[][]: صفيف ثنائي الأبعاد لمحاذاة النص عموديًا والمرتبط بالخلايا في النطاق

التفويض

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

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

insertCells(shiftDimension)

تُدرج خلايا فارغة في هذا النطاق. تحتفظ الخلايا الجديدة بأي تنسيق متوفّر في الخلايا التي كانت تشغل هذا النطاق سابقًا. يتم نقل البيانات الحالية في ورقة البيانات على طول السمة المقدَّمة بعيدًا عن النطاق المُدرَج.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:D10');
range.insertCells(SpreadsheetApp.Dimension.COLUMNS);

المعلَمات

الاسمالنوعالوصف
shiftDimensionDimensionالسمة التي يتمّ نقل البيانات الحالية على طولها

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

insertCheckboxes()

تُدرج مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام true للإشارة إلى أنّها محدّدة false للإشارة إلى أنّها غير محدّدة. تُحدِّد قيمة جميع الخلايا في النطاق على false.

const range = SpreadsheetApp.getActive().getRange('A1:B10');

// Inserts checkboxes into each cell in the range A1:B10 configured with 'true'
// for checked and 'false' for unchecked. Also, sets the value of each cell in
// the range A1:B10 to 'false'.
range.insertCheckboxes();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

insertCheckboxes(checkedValue)

تُدرج مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام قيمة مخصّصة للمربّعات المحدّدة والسلسلة الفارغة للمربّعات غير المحدّدة. تُستخدَم لضبط قيمة كل خلية في النطاق على السلسلة الفارغة.

const range = SpreadsheetApp.getActive().getRange('A1:B10');

// Inserts checkboxes into each cell in the range A1:B10 configured with 'yes'
// for checked and the empty string for unchecked. Also, sets the value of each
// cell in the range A1:B10 to
//  the empty string.
range.insertCheckboxes('yes');

المعلَمات

الاسمالنوعالوصف
checkedValueObjectالقيمة المحدّدة لميزة التحقّق من صحة بيانات مربّع الاختيار.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

insertCheckboxes(checkedValue, uncheckedValue)

تُدرِج هذه الدالة مربّعات اختيار في كل خلية في النطاق، ويتم ضبطها باستخدام قيم مخصّصة للحالات المحدّدة والغير محدّدة. تُستخدَم لضبط قيمة كل خلية في النطاق على القيمة المخصّصة التي لم يتم وضع علامة في المربّع بجانبها.

const range = SpreadsheetApp.getActive().getRange('A1:B10');

// Inserts checkboxes into each cell in the range A1:B10 configured with 'yes'
// for checked and 'no' for unchecked. Also, sets the value of each cell in the
// range A1:B10 to 'no'.
range.insertCheckboxes('yes', 'no');

المعلَمات

الاسمالنوعالوصف
checkedValueObjectالقيمة المحدّدة لميزة التحقّق من صحة بيانات مربّع الاختيار.
uncheckedValueObjectالقيمة غير المحدّدة للتحقّق من بيانات مربّع الاختيار.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

isBlank()

تعرِض القيمة true إذا كان النطاق فارغًا تمامًا.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B2:D4');

Logger.log(range.isBlank());

الإرجاع

Boolean: true إذا كان النطاق فارغًا، false بخلاف ذلك

التفويض

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

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

isChecked()

تعرِض هذه الدالة ما إذا كانت حالة مربّع الاختيار في كل الخلايا ضمن النطاق هي "تمّ الاختيار". تعرِض القيمة null إذا تم وضع علامة في بعض الخلايا ولم يتم وضع علامة في الخلايا الأخرى، أو إذا لم تتضمّن بعض الخلايا مربّع اختيار التحقّق من صحة البيانات.

const range = SpreadsheetApp.getActive().getRange('A1:A3');

// Inserts checkboxes and sets each cell value to 'no' in the range A1:A3.
range.insertCheckboxes('yes', 'no');

const range1 = SpreadsheetApp.getActive().getRange('A1');
range1.setValue('yes');
// Sets the value of isRange1Checked as true as it contains the checked value.
const isRange1Checked = range1.isChecked();

const range2 = SpreadsheetApp.getActive().getRange('A2');
range2.setValue('no');
// Sets the value of isRange2Checked as false as it contains the unchecked
// value.
const isRange2Checked = range2.isChecked();

const range3 = SpreadsheetApp.getActive().getRange('A3');
range3.setValue('random');
// Sets the value of isRange3Checked as null, as it contains an invalid checkbox
// value.
const isRange3Checked = range3.isChecked();

الإرجاع

Booleantrue، إذا تم وضع علامة في كل الخلايا في النطاق، أو false إذا لم يتم وضع علامة في كل الخلايا في النطاق، أو null إذا لم يتم وضع علامة في أي من الخلايا أو لم يتم التحقّق من صحة بيانات مربع الاختيار

التفويض

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

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

isEndColumnBounded()

يحدِّد ما إذا كان نهاية النطاق مرتبطة بعمود معيّن. على سبيل المثال، بالنسبة إلى النطاقَين A1:B10 أو B:B، اللذَين تم ربطهما بالأعمدة في نهاية النطاق، تعرض هذه المحاولةtrue. بالنسبة إلى النطاقَين3:7 أو A1:5، اللذَين تم ربطهما فقط بصفوف معيّنة في نهاية النطاق، تعرض هذه المحاولةfalse.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Determines if the end of the range is bound to a particular column and logs
// it to the console.
console.log(range.isEndColumnBounded());

الإرجاع

Booleantrue إذا كانت نهاية النطاق مرتبطة بعمود معيّن، false بخلاف ذلك.

التفويض

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

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

isEndRowBounded()

يحدِّد ما إذا كان نهاية النطاق مرتبطة بصف معيّن. على سبيل المثال، بالنسبة إلى النطاقَين A1:B10 أو 3:7 اللذَين تم ربطهما بصفوف في نهاية النطاق، تعرض هذه المحاولةtrue. بالنسبة إلى النطاقَينB:B أو A1:C اللذَين تم ربطهما فقط بأعمدة معيّنة في نهاية النطاق، تعرض هذه المحاولةfalse.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Determines if the end of the range is bound to a particular row and logs it
// to the console.
console.log(range.isEndRowBounded());

الإرجاع

Booleantrue إذا كانت نهاية النطاق مرتبطة بصف معيّن، false في غير ذلك.

التفويض

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

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

isPartOfMerge()

تعرِض القيمة true إذا كانت الخلايا في النطاق الحالي تتداخل مع أي خلايا مدمجة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B3');

// True if any of the cells in A1:B3 is included in a merge.
const isPartOfMerge = range.isPartOfMerge();

الإرجاع

Boolean: true إذا كان النطاق يتداخل مع أي خلايا تم دمجها، وfalse بخلاف ذلك


isStartColumnBounded()

لتحديد ما إذا كانت بداية النطاق مرتبطة بعمود معيّن. على سبيل المثال، بالنسبة إلى النطاقَين A1:B10 أو B:B، اللذَين تم ربطهما بالأعمدة في بداية النطاق، تعرِض هذه الطريقة القيمة true. أمّا بالنسبة إلى النطاق 3:7، الذي تم ربطه بصفيف واحد فقط في بداية النطاق، تعرِض هذه الطريقة القيمة false.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Determines if the start of the range is bound to a particular column and logs
// it to the console.
console.log(range.isStartColumnBounded());

الإرجاع

Booleantrue إذا كانت بداية النطاق مرتبطة بعمود معيّن، false بخلاف ذلك.

التفويض

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

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

isStartRowBounded()

يحدِّد ما إذا كانت بداية النطاق مرتبطة بصف معيّن. على سبيل المثال، بالنسبة إلى النطاقَين A1:B10 أو 3:7 اللذَين تم ربطهما بصفوف في بداية النطاق، تعرض هذه العبارةtrue. أمّا بالنسبة إلى النطاق B:B، الذي تم ربطه فقط بعمود معيّن في بداية النطاق، فتُعرِض هذه العبارةfalse.

// 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 the range A1:D10 on Sheet1.
const range = sheet.getRange('A1:D10');

// Determines if the start of the range is bound to a particular row and logs it
// to the console.
console.log(range.isStartRowBounded());

الإرجاع

Booleantrue إذا كان بداية النطاق مرتبطًا بصف معيّن، false في غير ذلك.

التفويض

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

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

merge()

دمج الخلايا في النطاق معًا في قالب واحد

const sheet = SpreadsheetApp.getActiveSheet();

// The code below 2-dimensionally merges the cells in A1 to B3
sheet.getRange('A1:B3').merge();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

mergeAcross()

دمج الخلايا في النطاق على مستوى أعمدة النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The code below merges cells C5:E5 into one cell
const range1 = sheet.getRange('C5:E5');
range1.mergeAcross();

// The code below creates 2 horizontal cells, F5:H5 and F6:H6
const range2 = sheet.getRange('F5:H6');
range2.mergeAcross();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

mergeVertically()

دمج الخلايا في النطاق معًا

const sheet = SpreadsheetApp.getActiveSheet();

// The code below vertically merges the cells in A1 to A10
sheet.getRange('A1:A10').mergeVertically();

// The code below creates 3 merged columns: B1 to B10, C1 to C10, and D1 to D10
sheet.getRange('B1:D10').mergeVertically();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

moveTo(target)

قصّ هذا النطاق ولصقه (التنسيق والقيم) في النطاق المستهدَف

// The code below moves the first 5 columns over to the 6th column
const sheet = SpreadsheetApp.getActiveSheet();
sheet.getRange('A1:E').moveTo(sheet.getRange('F1'));

المعلَمات

الاسمالنوعالوصف
targetRangeنطاق مستهدَف لنسخ هذا النطاق إليه، ولا يُعتبَر سوى موضع الخلية في أعلى يمين الصفحة مهمًا.

التفويض

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

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

offset(rowOffset, columnOffset)

لعرض نطاق جديد تمّت إزاحته من هذا النطاق بعدد معيّن من الصفوف والأعمدة (يمكن أن يكون سالبًا). يكون النطاق الجديد بالحجم نفسه للنطاق الأصلي.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('A1');

// newCell references B2
const newCell = cell.offset(1, 1);

المعلَمات

الاسمالنوعالوصف
rowOffsetIntegerعدد الصفوف نزولاً من الخلية أعلى يمين النطاق، والقيم السالبة تمثل الصفوف صعودًا من الخلية أعلى يمين النطاق
columnOffsetIntegerعدد الأعمدة على يسار الخلية العلوية اليمنى للنطاق، والقيم السالبة تمثل الأعمدة على يمين الخلية العلوية اليمنى للنطاق

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.


offset(rowOffset, columnOffset, numRows)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('A1');

// newCell references B2:B3
const newRange = cell.offset(1, 1, 2);

المعلَمات

الاسمالنوعالوصف
rowOffsetIntegerعدد الصفوف نزولاً من الخلية أعلى يمين النطاق، والقيم السالبة تمثل الصفوف صعودًا من الخلية أعلى يمين النطاق
columnOffsetIntegerعدد الأعمدة على يسار الخلية العلوية اليمنى للنطاق، والقيم السالبة تمثل الأعمدة على يمين الخلية العلوية اليمنى للنطاق
numRowsIntegerالارتفاع بعدد الصفوف للنطاق الجديد.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.


offset(rowOffset, columnOffset, numRows, numColumns)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('A1');

// newCell references B2:C3
const newRange = cell.offset(1, 1, 2, 2);

المعلَمات

الاسمالنوعالوصف
rowOffsetIntegerعدد الصفوف نزولاً من الخلية أعلى يمين النطاق، والقيم السالبة تمثل الصفوف صعودًا من الخلية أعلى يمين النطاق
columnOffsetIntegerعدد الأعمدة على يسار الخلية العلوية اليمنى للنطاق، والقيم السالبة تمثل الأعمدة على يمين الخلية العلوية اليمنى للنطاق
numRowsIntegerالارتفاع بعدد الصفوف للنطاق الجديد.
numColumnsIntegerالعرض بالأعمدة للنطاق الجديد.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.


protect()

لإنشاء عنصر يمكنه حماية النطاق من التعديل إلا من قِبل المستخدمين الذين لديهم إذن إلى أن يغيّر النص البرمجي قائمة المحرِّرين للنطاق (من خلال استدعاء Protection.removeEditor(emailAddress) أو Protection.removeEditor(user) أو Protection.removeEditors(emailAddresses) أو Protection.addEditor(emailAddress) أو Protection.addEditor(user) أو Protection.addEditors(emailAddresses) أو ضبط قيمة جديدة لـ Protection.setDomainEdit(editable))، تتطابق الأذونات مع أذونات جدول الاطّلاع نفسه، ما يعني أنّ النطاق يبقى غير محمي. إذا كان النطاق محميًا، تنشئ هذه الطريقة نطاقًا محميًا جديدًا يتداخل مع النطاق الحالي. إذا كانت خلية محمية بنطاقات محمية متعددة وكان أي منها يمنع مستخدمًا معيّنًا من تعديل الخلية، لن يُسمح لهذا المستخدم بتعديل الخلية.

// Protect range A1:B10, then remove all other users from the list of editors.
const ss = SpreadsheetApp.getActive();
const range = ss.getRange('A1:B10');
const protection = range.protect().setDescription('Sample protected range');

// Ensure the current user is an editor before removing others. Otherwise, if
// the user's edit permission comes from a group, the script throws an exception
// upon removing the group.
const me = Session.getEffectiveUser();
protection.addEditor(me);
protection.removeEditors(protection.getEditors());
if (protection.canDomainEdit()) {
  protection.setDomainEdit(false);
}

الإرجاع

Protection: عنصر يمثّل إعدادات الحماية

التفويض

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

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

randomize()

لترتيب الصفوف عشوائيًا في النطاق المحدّد.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('A1:C7');

// Randomizes the range
range.randomize();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

removeCheckboxes()

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

const range = SpreadsheetApp.getActive().getRange('A1:B10');

// Inserts checkboxes and sets each cell value to 'no' in the range A1:B10.
range.insertCheckboxes('yes', 'no');

const range1 = SpreadsheetApp.getActive().getRange('A1');
range1.setValue('yes');
// Removes the checkbox data validation in cell A1 and clears its value.
range1.removeCheckboxes();

const range2 = SpreadsheetApp.getActive().getRange('A2');
range2.setValue('random');
// Removes the checkbox data validation in cell A2 but does not clear its value.
range2.removeCheckboxes();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

removeDuplicates()

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B1:D7');

// Remove duplicate rows in the range.
range.removeDuplicates();

الإرجاع

Range: النطاق الناتج بعد إزالة التكرارات يتم تقليل حجم النطاق بمقدار صف واحد لكل صف تتم إزالته.

التفويض

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

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

removeDuplicates(columnsToCompare)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('B1:D7');

// Remove rows which have duplicate values in column B.
range.removeDuplicates([2]);

// Remove rows which have duplicate values in both columns B and D.
range.removeDuplicates([2, 4]);

المعلَمات

الاسمالنوعالوصف
columnsToCompareInteger[]الأعمدة التي سيتم تحليلها بحثًا عن القيم المكرّرة في حال عدم تقديم أي أعمدة، تتم تحليل جميع الأعمدة بحثًا عن النُسخ المكرّرة.

الإرجاع

Range: النطاق الناتج بعد إزالة التكرارات يتم تقليل حجم النطاق بمقدار صف واحد لكل صف تتم إزالته.

التفويض

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

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

setBackground(color)

لضبط لون خلفية جميع الخلايا في النطاق بترميز CSS (مثل '#ffffff' أو 'white').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('B2:D5');
range.setBackground('red');

المعلَمات

الاسمالنوعالوصف
colorStringرمز لون بترميز CSS (مثل '#ffffff' أو 'white'). تؤدي قيمة null إلى إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBackgroundObject(color)

لضبط لون خلفية جميع الخلايا في النطاق

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const bgColor = SpreadsheetApp.newColor()
                    .setThemeColor(SpreadsheetApp.ThemeColorType.BACKGROUND)
                    .build();

const range = sheet.getRange('B2:D5');
range.setBackgroundObject(bgColor);

المعلَمات

الاسمالنوعالوصف
colorColorلون الخلفية المطلوب ضبطه. تؤدي القيمة null إلى إعادة ضبط لون الخلفية.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBackgroundObjects(color)

لضبط شبكة مستطيلة من ألوان الخلفية (يجب أن تتطابق مع أبعاد هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const colorAccent1 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT1)
                         .build();
const colorAccent2 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT2)
                         .build();
const colorAccent3 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT3)
                         .build();
const colorAccent4 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT4)
                         .build();

const colors = [
  [colorAccent1, colorAccent2],
  [colorAccent3, colorAccent4],
];

const cell = sheet.getRange('B5:C6');
cell.setBackgroundObjects(colors);

المعلَمات

الاسمالنوعالوصف
colorColor[][]مصفوفة ثنائية الأبعاد من الألوان، وتعمل قيم null على إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBackgroundRGB(red, green, blue)

لضبط الخلفية على اللون المحدّد باستخدام قيم RGB (أعداد صحيحة تتراوح بين 0 و255).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');

// Sets the background to white
cell.setBackgroundRGB(255, 255, 255);

// Sets the background to red
cell.setBackgroundRGB(255, 0, 0);

المعلَمات

الاسمالنوعالوصف
redIntegerقيمة اللون الأحمر بترميز RGB
greenIntegerالقيمة الخضراء في تنسيق RGB
blueIntegerقيمة اللون الأزرق بترميز RGB

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBackgrounds(color)

لضبط شبكة مستطيلة من ألوان الخلفية (يجب أن تتطابق مع أبعاد هذا النطاق). يتم تمثيل الألوان بترميز CSS (مثل '#ffffff' أو 'white').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const colors = [
  ['red', 'white', 'blue'],
  ['#FF0000', '#FFFFFF', '#0000FF'],  // These are the hex equivalents
];

const cell = sheet.getRange('B5:D6');
cell.setBackgrounds(colors);

المعلَمات

الاسمالنوعالوصف
colorString[][]صفيف ثنائي الأبعاد من الألوان بترميز CSS (مثل '#ffffff' أو 'white')؛ تؤدي قيم null إلى إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBorder(top, left, bottom, right, vertical, horizontal)

لضبط سمة border القيم الصالحة هي true (تفعيل) وfalse (إيقاف) وnull (بدون تغيير).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
// Sets borders on the top and bottom, but leaves the left and right unchanged
cell.setBorder(true, null, true, null, false, false);

المعلَمات

الاسمالنوعالوصف
topBooleantrue للحدود، false لأي حدود، null بدون تغيير.
leftBooleantrue للحدود، false لأي حدود، null بدون تغيير.
bottomBooleantrue للحدود، false لأي حدود، null بدون تغيير.
rightBooleantrue للحدود، false لأي حدود، null بدون تغيير.
verticalBooleantrue للحدود العمودية الداخلية، false لعدم وجود حدود، null لعدم إجراء أي تغيير.
horizontalBooleantrue للحدود الأفقية الداخلية، false لعدم وجود حدود، null لعدم إجراء أي تغيير.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setBorder(top, left, bottom, right, vertical, horizontal, color, style)

لضبط سمة الحدود باستخدام اللون و/أو النمط القيم الصالحة هي true (تفعيل) وfalse (إيقاف) وnull (بدون تغيير). بالنسبة إلى اللون، استخدِم رمز اللون في CSS (مثل '#ffffff' أو 'white').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
// Sets borders on the top and bottom, but leaves the left and right unchanged
// Also sets the color to "red", and the border to "DASHED".
cell.setBorder(
    true,
    null,
    true,
    null,
    false,
    false,
    'red',
    SpreadsheetApp.BorderStyle.DASHED,
);

المعلَمات

الاسمالنوعالوصف
topBooleantrue للحدود، false لأي حدود، null بدون تغيير.
leftBooleantrue للحدود، false لأي حدود، null بدون تغيير.
bottomBooleantrue للحدود، false لأي حدود، null بدون تغيير.
rightBooleantrue للحدود، false لأي حدود، null بدون تغيير.
verticalBooleantrue للحدود العمودية الداخلية، false لعدم وجود حدود، null لعدم إجراء أي تغيير.
horizontalBooleantrue للحدود الأفقية الداخلية، false لعدم وجود حدود، null لعدم إجراء أي تغيير.
colorStringلون بترميز CSS (مثل '#ffffff' أو 'white')، أو null للون التلقائي (أسود)
styleBorderStyleنمط للحدود، null للنمط التلقائي (متصل).

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setDataValidation(rule)

تُعدّ قاعدة واحدة للتحقّق من صحة البيانات لجميع الخلايا في النطاق.

// Set the data validation rule for cell A1 to require a value from B1:B10.
const cell = SpreadsheetApp.getActive().getRange('A1');
const range = SpreadsheetApp.getActive().getRange('B1:B10');
const rule =
    SpreadsheetApp.newDataValidation().requireValueInRange(range).build();
cell.setDataValidation(rule);

المعلَمات

الاسمالنوعالوصف
ruleDataValidationقاعدة التحقّق من صحة البيانات المطلوب ضبطها، أو null لإزالة ميزة التحقّق من صحة البيانات

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setDataValidations(rules)

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

// Set the data validation rules for Sheet1!A1:B5 to require a value from
// Sheet2!A1:A10.
const destinationRange =
    SpreadsheetApp.getActive().getSheetByName('Sheet1').getRange('A1:B5');
const sourceRange =
    SpreadsheetApp.getActive().getSheetByName('Sheet2').getRange('A1:A10');
const rule =
    SpreadsheetApp.newDataValidation().requireValueInRange(sourceRange).build();
const rules = destinationRange.getDataValidations();
for (let i = 0; i < rules.length; i++) {
  for (let j = 0; j < rules[i].length; j++) {
    rules[i][j] = rule;
  }
}
destinationRange.setDataValidations(rules);

المعلَمات

الاسمالنوعالوصف
rulesDataValidation[][]صفيف ثنائي الأبعاد من قواعد التحقّق من صحة البيانات المطلوب ضبطها؛ null قيم تزيل ميزة "التحقّق من صحة البيانات".

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontColor(color)

لضبط لون الخط بترميز CSS (مثل '#ffffff' أو 'white').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontColor('red');

المعلَمات

الاسمالنوعالوصف
colorStringلون الخط بترميز CSS (مثل '#ffffff' أو 'white'). تؤدي قيمة null إلى إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontColorObject(color)

لضبط لون الخط للنطاق المحدّد

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const color = SpreadsheetApp.newColor()
                  .setThemeColor(SpreadsheetApp.ThemeColorType.TEXT)
                  .build();

const cell = sheet.getRange('B2');
cell.setFontColor(color);

المعلَمات

الاسمالنوعالوصف
colorColorلون الخط المطلوب ضبطه. تؤدي القيمة null إلى إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontColorObjects(colors)

لضبط شبكة مستطيلة من ألوان الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const colorAccent1 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT1)
                         .build();
const colorAccent2 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT2)
                         .build();
const colorAccent3 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT3)
                         .build();
const colorAccent4 = SpreadsheetApp.newColor()
                         .setThemeColor(SpreadsheetApp.ThemeColorType.ACCENT4)
                         .build();

const colors = [
  [colorAccent1, colorAccent2],
  [colorAccent3, colorAccent4],
];

const cell = sheet.getRange('B5:C6');
cell.setFontColorObjects(colors);

المعلَمات

الاسمالنوعالوصف
colorsColor[][]صفيف ثنائي الأبعاد من الألوان، تؤدي قيم null إلى إعادة ضبط لون الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontColors(colors)

لضبط شبكة مستطيلة من ألوان الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق). يتم إدخال الألوان باستخدام رمز CSS (مثل '#ffffff' أو 'white').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const colors = [
  ['red', 'white', 'blue'],
  ['#FF0000', '#FFFFFF', '#0000FF'],  // These are the hex equivalents
];

const cell = sheet.getRange('B5:D6');
cell.setFontColors(colors);

المعلَمات

الاسمالنوعالوصف
colorsObject[][]صفيف ثنائي الأبعاد من الألوان بترميز CSS (مثل '#ffffff' أو 'white')؛ تؤدي قيم null إلى إعادة ضبط اللون.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontFamilies(fontFamilies)

لضبط شبكة مستطيلة من مجموعات الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق). تشمل أمثلة عائلات الخطوط Arial أو Helvetica.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const fonts = [
  ['Arial', 'Helvetica', 'Verdana'],
  ['Courier New', 'Arial', 'Helvetica'],
];

const cell = sheet.getRange('B2:D3');
cell.setFontFamilies(fonts);

المعلَمات

الاسمالنوعالوصف
fontFamiliesObject[][]صفيف ثنائي الأبعاد من عائلات الخطوط، تؤدي قيم null إلى إعادة ضبط مجموعة الخطوط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontFamily(fontFamily)

لضبط مجموعة الخطوط، مثل Arial أو Helvetica

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontFamily('Helvetica');

المعلَمات

الاسمالنوعالوصف
fontFamilyStringمجموعة الخطوط المطلوب ضبطها. تؤدي القيمة null إلى إعادة ضبط مجموعة الخطوط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontLine(fontLine)

لضبط نمط سطر الخط للنص المحدّد ('underline' أو 'line-through' أو 'none').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontLine('line-through');

المعلَمات

الاسمالنوعالوصف
fontLineStringنمط خطّ الخط، إما 'underline' أو 'line-through' أو 'none'؛ تؤدي القيمة null إلى إعادة ضبط نمط خطّ الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontLines(fontLines)

تُستخدَم لضبط شبكة مستطيلة من أنماط الخطوط (يجب أن تتطابق مع سمات هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const fontLines = [['underline', 'line-through', 'none']];

const range = sheet.getRange('B2:D2');
range.setFontLines(fontLines);

المعلَمات

الاسمالنوعالوصف
fontLinesObject[][]صفيف ثنائي الأبعاد من أنماط خطوط الخطوط ('underline' أو 'line-through' أو 'none'). تؤدي قيم null إلى إعادة ضبط نمط خط الخطوط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontSize(size)

لضبط حجم الخط، مع تحديد حجم النقطة المراد استخدامه.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontSize(20);

المعلَمات

الاسمالنوعالوصف
sizeIntegerحجم الخط بوحدة النقطة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontSizes(sizes)

لضبط شبكة مستطيلة من أحجام الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق). يتم قياس الأحجام بالنقاط.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const fontSizes = [[16, 20, 24]];

const range = sheet.getRange('B2:D2');
range.setFontSizes(fontSizes);

المعلَمات

الاسمالنوعالوصف
sizesObject[][]صفيف ثنائي الأبعاد للمقاسات

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontStyle(fontStyle)

اضبط نمط الخط للنطاق المحدّد ('italic' أو 'normal').

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontStyle('italic');

المعلَمات

الاسمالنوعالوصف
fontStyleStringنمط الخط، إما 'italic' أو 'normal'. تؤدي القيمة null إلى إعادة ضبط نمط الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontStyles(fontStyles)

لضبط شبكة مستطيلة من أنماط الخطوط (يجب أن تتطابق مع أبعاد هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const fontStyles = [['italic', 'normal']];

const range = sheet.getRange('B2:C2');
range.setFontStyles(fontStyles);

المعلَمات

الاسمالنوعالوصف
fontStylesObject[][]مصفوفة ثنائية الأبعاد من أنماط الخطوط، إما 'italic' أو 'normal'. تؤدي قيم null إلى إعادة ضبط نمط الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontWeight(fontWeight)

اضبط سمك الخط للنطاق المحدّد (عادي/غامق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setFontWeight('bold');

المعلَمات

الاسمالنوعالوصف
fontWeightStringكثافة الخط، إما 'bold' أو 'normal'. تؤدي القيمة null إلى إعادة ضبط كثافة الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFontWeights(fontWeights)

لضبط شبكة مستطيلة من قيم مقياس الخط (يجب أن تتطابق مع سمات هذا النطاق). من الأمثلة على سمك الخط "سمين".

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const fontStyles = [['bold', 'bold', 'normal']];

const range = sheet.getRange('B2:D2');
range.setFontWeights(fontStyles);

المعلَمات

الاسمالنوعالوصف
fontWeightsObject[][]مصفوفة ثنائية الأبعاد لكثافة الخط، إما 'bold' أو 'normal'. تؤدي قيم null إلى إعادة ضبط كثافة الخط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFormula(formula)

تعديل صيغة هذا النطاق يجب أن تكون الصيغة المحدّدة بترميز A1.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B5');
cell.setFormula('=SUM(B3:B4)');

المعلَمات

الاسمالنوعالوصف
formulaStringسلسلة تمثّل الصيغة المطلوب ضبطها للخلية.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFormulaR1C1(formula)

تعديل صيغة هذا النطاق يجب أن تكون الصيغة المحدّدة بترميز R1C1.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B5');
// This sets the formula to be the sum of the 3 rows above B5
cell.setFormulaR1C1('=SUM(R[-3]C[0]:R[-1]C[0])');

المعلَمات

الاسمالنوعالوصف
formulaStringصيغة سلسلة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFormulas(formulas)

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

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// This sets the formulas to be a row of sums, followed by a row of averages
// right below. The size of the two-dimensional array must match the size of the
// range.
const formulas = [
  ['=SUM(B2:B4)', '=SUM(C2:C4)', '=SUM(D2:D4)'],
  ['=AVERAGE(B2:B4)', '=AVERAGE(C2:C4)', '=AVERAGE(D2:D4)'],
];

const cell = sheet.getRange('B5:D6');
cell.setFormulas(formulas);

المعلَمات

الاسمالنوعالوصف
formulasString[][]صفيف سلاسل ثنائي الأبعاد من الصِيَغ

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setFormulasR1C1(formulas)

تُستخدَم لضبط شبكة مستطيلة من الصِيَغ (يجب أن تتطابق مع سمات هذا النطاق). يجب أن تكون الصِيَغ المُعطاة بترميز R1C1.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// This creates formulas for a row of sums, followed by a row of averages.
const sumOfRowsAbove = '=SUM(R[-3]C[0]:R[-1]C[0])';
const averageOfRowsAbove = '=AVERAGE(R[-4]C[0]:R[-2]C[0])';

// The size of the two-dimensional array must match the size of the range.
const formulas = [
  [sumOfRowsAbove, sumOfRowsAbove, sumOfRowsAbove],
  [averageOfRowsAbove, averageOfRowsAbove, averageOfRowsAbove],
];

const cell = sheet.getRange('B5:D6');
// This sets the formula to be the sum of the 3 rows above B5.
cell.setFormulasR1C1(formulas);

المعلَمات

الاسمالنوعالوصف
formulasString[][]صفيف ثنائي الأبعاد من الصِيَغ بتنسيق R1C1

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setHorizontalAlignment(alignment)

اضبط المحاذاة الأفقية (من اليسار إلى اليمين) للنطاق المحدّد (يمين/وسط/يسار).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setHorizontalAlignment('center');

المعلَمات

الاسمالنوعالوصف
alignmentStringالاتّساق، إما 'left' أو 'center' أو 'normal'. تؤدي قيمة null إلى إعادة ضبط الاتّساق.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setHorizontalAlignments(alignments)

لضبط شبكة مستطيلة من المحاذاة الأفقية، راجِع setHorizontalAlignment(alignment).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const horizontalAlignments = [['left', 'right', 'center']];

const range = sheet.getRange('B2:D2');
range.setHorizontalAlignments(horizontalAlignments);

المعلَمات

الاسمالنوعالوصف
alignmentsObject[][]صفيف ثنائي الأبعاد من عمليات المحاذاة، إما 'left' أو 'center' أو 'normal'. تؤدي قيمة null إلى إعادة ضبط المحاذاة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

انظر أيضًا


setNote(note)

تُستخدَم لضبط الملاحظة على القيمة المحدّدة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setNote('This is a note');

المعلَمات

الاسمالنوعالوصف
noteStringقيمة ملاحظة النطاق التي سيتم ضبطها. تؤدي قيمة null إلى إزالة الملاحظة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setNotes(notes)

لضبط شبكة مستطيلة من الملاحظات (يجب أن تتطابق مع سمات هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const notes = [
  ['it goes', 'like this', 'the fourth, the fifth'],
  ['the minor fall', 'and the', 'major lift'],
];

const cell = sheet.getRange('B2:D3');
cell.setNotes(notes);

المعلَمات

الاسمالنوعالوصف
notesObject[][]صفيف ثنائي الأبعاد من الملاحظات، تؤدي قيم null إلى إزالة الملاحظة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

انظر أيضًا


setNumberFormat(numberFormat)

تضبط تنسيق الرقم أو التاريخ على سلسلة التنسيق المحدّدة. يمكنك الاطّلاع على أنماط التنسيق المقبولة في مستندات Sheets API.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
// Always show 3 decimal points
cell.setNumberFormat('0.000');

المعلَمات

الاسمالنوعالوصف
numberFormatStringسلسلة تنسيق رقمي

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setNumberFormats(numberFormats)

تُستخدَم لضبط شبكة مستطيلة من تنسيقات الأرقام أو التواريخ (يجب أن تتطابق مع سمات هذا النطاق). تمثل paramter values سلاسل أنماط التنسيق كما هو موضّح في paramter مستندات واجهة برمجة التطبيقات لجداول بيانات Google.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const formats = [['0.000', '0,000,000', '$0.00']];

const range = sheet.getRange('B2:D2');
range.setNumberFormats(formats);

المعلَمات

الاسمالنوعالوصف
numberFormatsObject[][]صفيف ثنائي الأبعاد لتنسيقات الأرقام

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setRichTextValue(value)

تُستخدَم لضبط قيمة "نص منسق" للخلايا في النطاق.

// Sets all cells in range B2:D4 to have the text "Hello world", with "Hello"
// bolded.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B2:D4');
const bold = SpreadsheetApp.newTextStyle().setBold(true).build();
const richText = SpreadsheetApp.newRichTextValue()
                     .setText('Hello world')
                     .setTextStyle(0, 5, bold)
                     .build();
range.setRichTextValue(richText);

المعلَمات

الاسمالنوعالوصف
valueRichTextValueقيمة النص المنسق المطلوبة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setRichTextValues(values)

لضبط شبكة مستطيلة من قيم النص المنسَّق

// Sets the cells in range A1:A2 to have Rich Text values.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('A1:A2');
const bold = SpreadsheetApp.newTextStyle().setBold(true).build();
const italic = SpreadsheetApp.newTextStyle().setItalic(true).build();
const richTextA1 = SpreadsheetApp.newRichTextValue()
                       .setText('This cell is bold')
                       .setTextStyle(bold)
                       .build();
const richTextA2 = SpreadsheetApp.newRichTextValue()
                       .setText('bold words, italic words')
                       .setTextStyle(0, 11, bold)
                       .setTextStyle(12, 24, italic)
                       .build();
range.setRichTextValues([[richTextA1], [richTextA2]]);

المعلَمات

الاسمالنوعالوصف
valuesRichTextValue[][]قيم النص المنسق المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

يحدّد ما إذا كان يجب أن يعرض النطاق روابط تشعّبية أم لا.

// Opens the spreadsheet file by its URL. If you created your script from within
// a Google Sheets file, you can useSpreadsheetApp.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 A30 and sets its hyperlink value.
const range = sheet.getRange('A30');
range.setValue('https://www.example.com');

// Sets cell A30 to show hyperlinks.
range.setShowHyperlink(true);

المعلَمات

الاسمالنوعالوصف
showHyperlinkBooleanما إذا كان سيتم عرض الرابط التشعّبي أم لا

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextDirection(direction)

تُستخدَم لضبط اتجاه النص للخلايا في النطاق. إذا كان الاتجاه المحدّد هو null، يتم استنتاج الاتجاه ثم ضبطه.

// Sets right-to-left text direction for the range.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B5:C6');
range.setTextDirection(SpreadsheetApp.TextDirection.RIGHT_TO_LEFT);

المعلَمات

الاسمالنوعالوصف
directionTextDirectionاتجاه النص المطلوب، إذا كان null يتم استنتاج الاتجاه قبل الإعداد.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextDirections(directions)

لضبط شبكة مستطيلة لاتجاهات النص إذا كان الاتجاه المحدّد هو null، يتم استنتاج الاتجاه ثمّ ضبطه.

// Copies all of the text directions from range A1:B2 over to range C5:D6.
const sheet = SpreadsheetApp.getActiveSheet();
const range1 = sheet.getRange('A1:B2');
const range2 = sheet.getRange('C5:D6');

range2.setTextRotations(range1.getTextDirections());

المعلَمات

الاسمالنوعالوصف
directionsTextDirection[][]اتجاهات النص المطلوبة. إذا كان الاتجاه المحدّد هو null، يتم الاستنتاج قبل الضبط.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextRotation(degrees)

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

بالنسبة إلى اتجاه النص من اليسار إلى اليمين، تكون الزوايا الموجبة في الاتجاه عكس عقارب الساعة، بينما تكون في الاتجاه مع عقارب الساعة بالنسبة إلى اتجاه النص من اليمين إلى اليسار.

// Sets all cell's in range B2:D4 to have text rotated up 45 degrees.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B2:D4');

range.setTextRotation(45);

المعلَمات

الاسمالنوعالوصف
degreesIntegerالزاوية المطلوبة بين الاتجاه العادي والاتجاه المطلوب بالنسبة إلى النص من اليسار إلى اليمين، تكون الزوايا الموجبة في الاتجاه عكس عقارب الساعة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextRotation(rotation)

لضبط إعدادات تدوير النص للخلايا في النطاق

// Sets all cell's in range B2:D4 to have the same text rotation settings as
// cell A1.
const sheet = SpreadsheetApp.getActiveSheet();

const rotation = sheet.getRange('A1').getTextRotation();

sheet.getRange('B2:D4').setTextRotation(rotation);

المعلَمات

الاسمالنوعالوصف
rotationTextRotationإعدادات تدوير النص المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextRotations(rotations)

لضبط شبكة مستطيلة من عمليات تدوير النص.

// Copies all of the text rotations from range A1:B2 over to range C5:D6.
const sheet = SpreadsheetApp.getActiveSheet();
const range1 = sheet.getRange('A1:B2');
const range2 = sheet.getRange('C5:D6');

range2.setTextRotations(range1.getTextRotations());

المعلَمات

الاسمالنوعالوصف
rotationsTextRotation[][]إعدادات تدوير النص المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextStyle(style)

لضبط نمط النص للخلايا في النطاق

// Sets the cells in range C5:D6 to have underlined size 15 font.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('C5:D6');
const style =
    SpreadsheetApp.newTextStyle().setFontSize(15).setUnderline(true).build();
range.setTextStyle(style);

المعلَمات

الاسمالنوعالوصف
styleTextStyleنمط النص المطلوب

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setTextStyles(styles)

لضبط شبكة مستطيلة من أنماط النصوص

// Sets text styles for cells in range A1:B2
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('A1:B2');
const bold = SpreadsheetApp.newTextStyle().setBold(true).build();
const otherStyle = SpreadsheetApp.newTextStyle()
                       .setBold(true)
                       .setUnderline(true)
                       .setItalic(true)
                       .setForegroundColor('#335522')
                       .setFontSize(44)
                       .build();
range.setTextStyles([
  [bold, otherStyle],
  [otherStyle, bold],
]);

المعلَمات

الاسمالنوعالوصف
stylesTextStyle[][]أنماط النصوص المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setValue(value)

تُستخدَم لضبط قيمة النطاق. يمكن أن تكون القيمة رقمية أو تسلسلية أو منطقية أو تاريخًا. إذا كانت القيمة تبدأ ب'='، يتم تفسيرها على أنّها صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setValue(100);

المعلَمات

الاسمالنوعالوصف
valueObjectقيمة النطاق

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setValues(values)

تُستخدَم لضبط شبكة مستطيلة من القيم (يجب أن تتطابق مع سمات هذا النطاق). إذا كانت القيمة تبدأ بعلامة =، يتم تفسيرها على أنّها صيغة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const values = [['2.000', '1,000,000', '$2.99']];

const range = sheet.getRange('B2:D2');
range.setValues(values);

المعلَمات

الاسمالنوعالوصف
valuesObject[][]صفيف ثنائي الأبعاد من القيم

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setVerticalAlignment(alignment)

اضبط المحاذاة العمودية (من أعلى إلى أسفل) للنطاق المحدّد (أعلى/وسط/أسفل).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setVerticalAlignment('middle');

المعلَمات

الاسمالنوعالوصف
alignmentStringالاتّساق، إما 'top' أو 'middle' أو 'bottom'. تؤدي قيمة null إلى إعادة ضبط الاتّساق.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setVerticalAlignments(alignments)

لضبط شبكة مستطيلة من المحاذاة العمودية (يجب أن تتطابق مع سمات هذا النطاق).

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const alignments = [['top', 'middle', 'bottom']];

const range = sheet.getRange('B2:D2');
range.setVerticalAlignments(alignments);

المعلَمات

الاسمالنوعالوصف
alignmentsObject[][]صفيف ثنائي الأبعاد من عمليات المحاذاة، إما 'top' أو 'middle' أو 'bottom'. تؤدي قيمة null إلى إعادة ضبط المحاذاة.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

انظر أيضًا


setVerticalText(isVertical)

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

// Sets all cell's in range B2:D4 to have vertically stacked text.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B2:D4');

range.setVerticalText(true);

المعلَمات

الاسمالنوعالوصف
isVerticalBooleanما إذا كان سيتم تجميع النص أم لا

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setWrap(isWrapEnabled)

ضبط لفّ الخلايا للنطاق المحدّد

يتم تغيير حجم الخلايا التي تم تفعيل ميزة الالتفاف فيها (الإعداد التلقائي) لعرض محتواها بالكامل. يتم عرض أكبر قدر ممكن من الخلايا التي تم إيقاف ميزة التفاف النص فيها في الخلية بدون تغيير حجمها أو عرضها على خطوط متعددة.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const cell = sheet.getRange('B2');
cell.setWrap(true);

المعلَمات

الاسمالنوعالوصف
isWrapEnabledBooleanما إذا كان سيتم لف النص أم لا

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setWrapStrategies(strategies)

تُستخدَم لضبط شبكة مستطيلة من استراتيجيات التفاف.

// Copies all of the wrap strategies from range A1:B2 over to range C5:D6.
const sheet = SpreadsheetApp.getActiveSheet();
const range1 = sheet.getRange('A1:B2');
const range2 = sheet.getRange('C5:D6');

range2.setWrapStrategies(range1.getWrapStrategies());

المعلَمات

الاسمالنوعالوصف
strategiesWrapStrategy[][]استراتيجيات الالتفاف المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setWrapStrategy(strategy)

لضبط استراتيجية لف النص للخلايا في النطاق

// Sets all cells in range B2:D4 to use the clip wrap strategy.
const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('B2:D4');

range.setWrapStrategy(SpreadsheetApp.WrapStrategy.CLIP);

المعلَمات

الاسمالنوعالوصف
strategyWrapStrategyاستراتيجية الالتفاف المطلوبة

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

setWraps(isWrapEnabled)

تُستخدَم لضبط شبكة مستطيلة من سياسات لفّ النص (يجب أن تتطابق مع أبعاد هذا النطاق). يتم تغيير حجم الخلايا التي تم تفعيل ميزة التفاف فيها (الإعداد التلقائي) لعرض محتواها بالكامل. الخلايا التي تم إيقاف ميزة "التفاف النص" فيها تعرض أكبر قدر ممكن من المحتوى في الخلية بدون تغيير حجمها أو عرضها على عدة أسطر.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

// The size of the two-dimensional array must match the size of the range.
const wraps = [[true, true, false]];

const range = sheet.getRange('B2:D2');
range.setWraps(wraps);

المعلَمات

الاسمالنوعالوصف
isWrapEnabledObject[][]صفيف ثنائي الأبعاد من متغيّرات التفاف التي تحدّد ما إذا كان سيتم التفاف نص في خلية أم لا.

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

انظر أيضًا


shiftColumnGroupDepth(delta)

تغيِّر عمق تجميع الأعمدة للنطاق بمقدار المبلغ المحدّد.

ويؤدي ذلك إلى إنشاء مجموعات تتداخل مع النطاق أو تعديلها أو حذفها. بالنسبة إلى القيم المتزايدة، يتم إنشاء المجموعات و/أو تعديلها. بالنسبة إلى القيم المتناقصة، يتم إتلاف المجموعات و/أو تعديلها.

ولا يؤثر ذلك في حال خفض عمق المجموعة إلى ما دون الصفر أو فوق ثمانية.

إذا كان column group control position هو BEFORE، سيؤدي ذلك إلى ظهور خطأ عند محاولة نقل عمق الصف الأول.

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getActiveRange();

// The column grouping depth is increased by 1.
range.shiftColumnGroupDepth(1);

// The column grouping depth is decreased by 1.
range.shiftColumnGroupDepth(-1);

المعلَمات

الاسمالنوعالوصف
deltaIntegerالمبلغ الذي يتم من خلاله تغيير عمق مجموعة الأعمدة لهذا النطاق

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

عمليات الرمي

Error - عند محاولة تغيير عمق أول عمود عندما يكون موضع التحكّم هو GroupControlTogglePosition.BEFORE

التفويض

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

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

shiftRowGroupDepth(delta)

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

ويؤدي ذلك إلى إنشاء مجموعات تتداخل مع النطاق أو تعديلها أو حذفها. بالنسبة إلى القيم المتزايدة، يتم إنشاء المجموعات و/أو تعديلها. بالنسبة إلى القيم المتناقصة، يتم إتلاف المجموعات و/أو تعديلها.

ولا يؤثر ذلك في حال خفض عمق المجموعة إلى ما دون الصفر أو فوق ثمانية.

إذا كانت قيمة row group control position هي BEFORE، سيؤدي ذلك إلى ظهور خطأ عند محاولة تغيير عمق الصف الأول.

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getActiveRange();

// The row grouping depth is increased by 1.
range.shiftRowGroupDepth(1);

// The row grouping depth is decreased by 1.
range.shiftRowGroupDepth(-1);

المعلَمات

الاسمالنوعالوصف
deltaIntegerالمبلغ الذي يتم من خلاله تغيير عمق مجموعة الصفوف لهذا النطاق

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

عمليات الرمي

Error - عند محاولة تغيير عمق الصف الأول عندما يكون موضع التحكّم هو GroupControlTogglePosition.BEFORE

التفويض

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

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

sort(sortSpecObj)

لترتيب الخلايا في النطاق المحدّد حسب العمود والترتيب المحدّد

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];
const range = sheet.getRange('A1:C7');

// Sorts by the values in the first column (A)
range.sort(1);

// Sorts by the values in the second column (B)
range.sort(2);

// Sorts descending by column B
range.sort({column: 2, ascending: false});

// Sorts descending by column B, then ascending by column A
// Note the use of an array
range.sort([
  {column: 2, ascending: false},
  {column: 1, ascending: true},
]);

// For rows that are sorted in ascending order, the "ascending" parameter is
// optional, and just an integer with the column can be used instead. Note that
// in general, keeping the sort specification consistent results in more
// readable code. You can express the earlier sort as:
range.sort([{column: 2, ascending: false}, 1]);

// Alternatively, if you want all columns to be in ascending order, you can use
// the following (this makes column 2 ascending)
range.sort([2, 1]);
// ... which is equivalent to
range.sort([
  {column: 2, ascending: true},
  {column: 1, ascending: true},
]);

المعلَمات

الاسمالنوعالوصف
sortSpecObjObjectالأعمدة التي يتم الترتيب حسبها

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

splitTextToColumns()

تقسم عمود نص إلى أعمدة متعددة استنادًا إلى فاصل يتم رصده تلقائيًا.

// A1:A3 has the following values:
//           A                  B                 C
// 1 |one,one,one      |                 |                 |
// 2 |two,two,two      |                 |                 |
// 3 |three,three,three|                 |                 |

const range = SpreadsheetApp.getActiveSheet().getRange('A1:A3');
range.splitTextToColumns();

// Result after splitting the text to columns:
//           A                  B                 C
// 1 |one              |one              |one              |
// 2 |two              |two              |two              |
// 3 |three            |three            |three            |

التفويض

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

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

splitTextToColumns(delimiter)

تقسم هذه الدالة عمود نص إلى أعمدة متعددة باستخدام السلسلة المحدّدة كفاصل مخصّص.

// A1:A3 has the following values:
//           A                  B                 C
// 1 |one#one#one      |                 |                 |
// 2 |two#two#two      |                 |                 |
// 3 |three#three#three|                 |                 |

const range = SpreadsheetApp.getActiveSheet().getRange('A1:A3');
range.splitTextToColumns('#');

// Result after splitting the text to columns:
//           A                  B                 C
// 1 |one              |one              |one              |
// 2 |two              |two              |two              |
// 3 |three            |three            |three            |

المعلَمات

الاسمالنوعالوصف
delimiterStringالمحدّد المخصّص الذي سيتم التقسيم عنده

التفويض

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

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

splitTextToColumns(delimiter)

تقسم عمود نص إلى أعمدة متعددة استنادًا إلى الفاصل المحدّد.

// A1:A3 has the following values:
//           A                  B                 C
// 1 |one;one;one      |                 |                 |
// 2 |two;two;two      |                 |                 |
// 3 |three;three;three|                 |                 |

const range = SpreadsheetApp.getActiveSheet().getRange('A1:A3');
range.splitTextToColumns(SpreadsheetApp.TextToColumnsDelimiter.SEMICOLON);

// Result after splitting the text to columns:
//           A                  B                 C
// 1 |one              |one              |one              |
// 2 |two              |two              |two              |
// 3 |three            |three            |three            |

المعلَمات

الاسمالنوعالوصف
delimiterTextToColumnsDelimiterمحدِّد الفاصل المُعدّ مسبقًا الذي سيتم التقسيم على أساسه.

التفويض

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

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

trimWhitespace()

تُزيل هذه الدالة المسافات البيضاء (مثل المسافات أو علامات التبويب أو الأسطر الجديدة) في كل خلية في هذا النطاق. تزيل كل المسافات البيضاء من بداية نص كل خلية ونهايتها، وتقلل أي تسلسل فرعي من أحرف المسافات البيضاء المتبقية إلى مسافة واحدة.

const sheet = SpreadsheetApp.getActiveSpreadsheet().getSheets()[0];
const range = sheet.getRange('A1:A4');
range.activate();
range.setValues([
  ' preceding space',
  'following space ',
  'two  middle  spaces',
  '   =SUM(1,2)',
]);

range.trimWhitespace();

const values = range.getValues();
// Values are ['preceding space', 'following space', 'two middle spaces',
// '=SUM(1,2)']

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

uncheck()

تعمل هذه الدالة على تغيير حالة مربّعات الاختيار في النطاق إلى "غير محدّد"، وتتجاهل الخلايا في النطاق التي لا تحتوي حاليًا على القيمة المحدّدة أو غير المحدّدة التي تم ضبطها.

// Changes the state of cells which currently contain either the checked or
// unchecked value configured in the range A1:B10 to 'unchecked'.
const range = SpreadsheetApp.getActive().getRange('A1:B10');
range.uncheck();

الإرجاع

Range — هذا النطاق، لتسلسل العناصر.

التفويض

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

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

الطرق المتوقّفة