توسيع جداول بيانات Google

تنظيم صفحاتك في مجموعات يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.

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

تعالج معظم النصوص البرمجية في "جداول بيانات Google" المصفوفات للتفاعل مع الخلايا والصفوف والأعمدة في جدول بيانات. إذا لم تكن معتادًا على التعامل مع المصفوفات في JavaScript، يوفر CodeCADemy وحدة تدريب رائعة للمصفوفات. (لاحظ أنّ هذه الدورة التدريبية لم يتم تطويرها من خلال Google وغير مرتبطة بها).

للاطّلاع على مقدمة سريعة حول استخدام "برمجة تطبيقات Google" مع "جداول بيانات Google"، يمكنك الرجوع إلى دليل البدء السريع لمدة 5 دقائق بشأن وحدات الماكرو والقوائم والدوال المخصّصة.

البدء

تتضمن "برمجة التطبيقات" واجهات برمجة تطبيقات خاصة تتيح لك إنشاء جداول بيانات Google وقراءتها وتعديلها بطريقة آلية. يمكن لبرمجة التطبيقات التفاعل مع "جداول بيانات Google" بطريقتين: يمكن لأي نص برمجي إنشاء جدول بيانات أو تعديله في حال حصل مستخدم النص البرمجي على الأذونات المناسبة لجدول البيانات، ويمكن أيضًا ربط نص برمجي بجدول بيانات، ما يمنح النص البرمجي إمكانات خاصة لتغيير واجهة المستخدم أو الاستجابة عند فتح جدول البيانات. لإنشاء نص برمجي مرتبط، اختَر الإضافات &gt؛ برمجة التطبيقات من داخل "جداول بيانات Google".

تتعامل خدمة جداول البيانات مع "جداول بيانات Google" كشبكة تعمل باستخدام مصفوفات ثنائية الأبعاد. لاسترداد البيانات من جدول البيانات، يجب الدخول إلى جدول البيانات الذي يتم تخزين البيانات فيه، والحصول على النطاق في جدول البيانات الذي يحتوي على البيانات، ثم الحصول على قيم الخلايا. تعمل "برمجة التطبيقات" على تسهيل الوصول إلى البيانات من خلال قراءة البيانات المنظَّمة في جدول البيانات وإنشاء كائنات JavaScript لها.

قراءة البيانات

لنفترض أنّ لديك قائمة بأسماء المنتجات وأرقام المنتجات التي تخزنها في جدول بيانات، كما هو موضّح في الصورة أدناه.

يوضح المثال أدناه كيفية استرداد أسماء المنتجات وأرقام المنتجات وتسجيلها.

function logProductInfo() {
  var sheet = SpreadsheetApp.getActiveSheet();
  var data = sheet.getDataRange().getValues();
  for (var i = 0; i < data.length; i++) {
    Logger.log('Product name: ' + data[i][0]);
    Logger.log('Product number: ' + data[i][1]);
  }
}

عرض السجلّات

لعرض البيانات التي تم تسجيلها، انقر على سجل التنفيذ في أعلى محرّر النص البرمجي.

كتابة البيانات

لتخزين البيانات، مثل اسم منتج جديد ورقمه في جدول البيانات، أضِف الرمز التالي إلى نهاية النص البرمجي.

function addProduct() {
  var sheet = SpreadsheetApp.getActiveSheet();
  sheet.appendRow(['Cotton Sweatshirt XL', 'css004']);
}

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

القوائم المخصّصة وواجهات المستخدمين

يمكنك تخصيص جداول بيانات Google عن طريق إضافة قوائم مخصصة ومربّعات حوار وأشرطة جانبية. لمعرفة أساسيات إنشاء القوائم، يمكنك الاطّلاع على دليل القوائم. لمعرفة المزيد من المعلومات حول تخصيص محتوى مربع الحوار، راجع دليل خدمة HTML.

يمكنك أيضًا إرفاق دالة نص برمجي بصورة أو رسم في جدول بيانات، وسيتم تنفيذ الدالة عندما ينقر المستخدم على الصورة أو الرسم. لمعرفة المزيد من المعلومات، يمكنك الاطّلاع على الصور والرسومات في "جداول بيانات Google".

إذا كنت تخطط لنشر الواجهة المخصّصة كجزء من إضافة، يمكنك اتّباع دليل النمط لتحقيق الاتساق مع أسلوب محرّر "جداول بيانات Google " وتنسيقه.

الاتصال بـ "نماذج Google"

تسمح لك "برمجة التطبيقات" بربط "نماذج Google" بـ "جداول بيانات Google" من خلال خدمتَين نماذج Google وجدول بيانات. يمكن لهذه الميزة إنشاء نموذج Google تلقائيًا استنادًا إلى البيانات في جدول بيانات. تتيح لك "برمجة التطبيقات" أيضًا استخدام عوامل التشغيل، مثل onFormSubmit لتنفيذ إجراء محدّد بعد ردّ المستخدم على النموذج. لمعرفة مزيد من المعلومات حول ربط "جداول بيانات Google" بـ "نماذج Google"، يمكنك تجربة البدء السريع إدارة الردود على "نماذج Google" لمدة 5 دقائق.

التنسيق

تحتوي فئة Range على طرق مثل setBackground(color) للوصول إلى تنسيق خلية أو نطاق خلايا وتعديله. يوضّح المثال التالي كيفية ضبط نمط النطاق:

function formatMySpreadsheet() {
  // Set the font style of the cells in the range of B2:C2 to be italic.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];
  var cell = sheet.getRange('B2:C2');
  cell.setFontStyle('italic');
}

التحقُّق من صحة البيانات

تتيح لك "برمجة التطبيقات" الوصول إلى القواعد الحالية للتحقق من صحة البيانات في "جداول بيانات Google" أو إنشاء قواعد جديدة. على سبيل المثال، يعرض النموذج التالي كيفية إعداد قاعدة التحقق من صحة البيانات التي تسمح فقط بالأرقام بين 1 و100 في خلية.

function validateMySpreadsheet() {
  // Set a rule for the cell B4 to be a number between 1 and 100.
  var cell = SpreadsheetApp.getActive().getRange('B4');
  var rule = SpreadsheetApp.newDataValidation()
     .requireNumberBetween(1, 100)
     .setAllowInvalid(false)
     .setHelpText('Number must be between 1 and 100.')
     .build();
  cell.setDataValidation(rule);
}

لمزيد من التفاصيل حول التعامل مع قواعد التحقّق من صحة البيانات، يُرجى الاطّلاع على SpreadsheetApp.newDataValidation() وDataValidationBuilder وRange.setDataValidation(rule)

الرسومات البيانية

تتيح لك "برمجة التطبيقات" تضمين الرسومات البيانية في جدول بيانات يمثّل البيانات في نطاق محدّد. ينشئ المثال التالي رسمًا بيانيًا شريطيًا مضمّنًا، على افتراض أنّ لديك بيانات قابلة للرسم في الخلايا A1:B15:

function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[0];

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.BAR)
     .addRange(sheet.getRange('A1:B15'))
     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}

لمعرفة المزيد من المعلومات عن تضمين رسم بياني في جدول البيانات، اطّلِع على EmbeddedChart وأدوات إنشاء الرسوم البيانية المحدّدة، مثل EmbeddedPieChartBuilder.

الدوال المخصصة في "جداول بيانات Google"

تشبه الدالة المخصّصة دالة جدول بيانات مضمّنة، مثل =SUM(A1:A5)، إلا أنك تحدِّد سلوك الدوال باستخدام "برمجة تطبيقات Google". على سبيل المثال، يمكنك إنشاء دالة مخصّصة، in2mm()، التي تحوِّل قيمة من بوصة إلى مليمتر، ثم تستخدِم الصيغة في جدول البيانات عن طريق كتابة =in2mm(A1) أو =in2mm(10) في خلية.

لمعرفة المزيد من المعلومات حول الدوال المخصصة، يمكنك تجربة القوائم والدوال المخصّصة البدء السريع لمدة 5 دقائق، أو إلقاء نظرة على دليل الدوال المخصصة الأكثر تفصيلاً.

وحدات ماكرو

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

إضافات لجداول بيانات Google

الإضافات هي مشاريع برمجة تطبيقات مُجمَّعة في حزمة، ويتم تشغيلها داخل "جداول بيانات Google" ويمكن تثبيتها من متجر إضافات "جداول بيانات Google". إذا كنت قد طوّرت نصًا برمجيًا لـ "جداول بيانات Google" وتريد مشاركته مع العالم، تتيح لك "برمجة التطبيقات" نشر نصك البرمجي كإضافة حتى يتمكّن المستخدمون الآخرون من تثبيته من متجر الإضافات.

الكائن Triggers

يمكن للنصوص البرمجية المرتبطة بملف "جداول بيانات Google" أن تستخدِم عوامل تشغيل بسيطة مثل الدوال onOpen() وonEdit() للاستجابة تلقائيًا عندما يفتح المستخدم الذي لديه الإذن بتعديل المحتوى في جدول البيانات أو يعدّله.

مثل المشغِّلات البسيطة، تسمح المشغّلات القابلة للتثبيت لـ "جداول بيانات Google " بتنفيذ وظيفة تلقائيًا عند وقوع حدث معيّن. ولكن برامج التشغيل القابلة للتثبيت، تقدّم مرونة أكبر من عوامل التشغيل البسيطة وتدعم الأحداث التالية: الفتح والتعديل والتغيير وإرسال النموذج والبث المستند إلى الوقت (الساعة).