تتيح لك واجهة برمجة التطبيقات Google Sheets API إنشاء أوراق ومسحها ونسخها وحذفها، كما تتيح لك التحكّم في خصائصها. توضّح الأمثلة الواردة في هذه الصفحة كيف يمكنك تنفيذ بعض عمليات "جداول بيانات Google" الشائعة باستخدام Sheets API.
يتم تقديم هذه الأمثلة في شكل طلبات HTTP لتكون محايدة من حيث اللغة. للتعرّف على كيفية تنفيذ تعديل مجمّع بلغات مختلفة باستخدام مكتبات عملاء Google API، يمكنك الاطّلاع على تعديل جداول البيانات.
في هذه الأمثلة، يشير العنصران النائبان SPREADSHEET_ID وSHEET_ID إلى المكان الذي ستوفّر فيه أرقام التعريف هذه. يمكنك العثور على رقم تعريف جدول البيانات في عنوان URL الخاص بجدول البيانات. يمكنك الحصول على معرّف جدول البيانات باستخدام الطريقة spreadsheets.get. يتم تحديد النطاقات باستخدام ترميز A1. مثال على النطاق: الورقة1!A1:D5.
إضافة ورقة
يوضّح نموذج الرمز التالي كيفية استخدام AddSheetRequest لإضافة ورقة إلى جدول بيانات، مع ضبط العنوان وحجم الشبكة ولون علامة التبويب أيضًا.spreadsheets.batchUpdate
تتألف الاستجابة من AddSheetResponse، والذي يحتوي على كائن يتضمّن خصائص ورقة الجداول التي تم إنشاؤها (مثل SHEET_ID).
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"addSheet": {
"properties": {
"title": "Deposits",
"gridProperties": {
"rowCount": 20,
"columnCount": 12
},
"tabColor": {
"red": 1.0,
"green": 0.3,
"blue": 0.4
}
}
}
}
]
}محو جميع القيم في ورقة مع الاحتفاظ بالتنسيقات
يوضّح نموذج الرمز البرمجي التالي
spreadsheets.batchUpdate
كيفية استخدام
UpdateCellsRequest
لإزالة جميع القيم من ورقة مع الحفاظ على التنسيق بدون تغيير.
يتم تفسير تحديد الحقل
userEnteredValue
بدون قيمة مقابلة على أنّه تعليمات لمحو القيم
في النطاق. يمكن استخدام هذا الإعداد مع حقول أخرى أيضًا. على سبيل المثال، يؤدي تغيير قيمة fields إلى userEnteredFormat إلى إزالة كل التنسيق الذي يتيحه Sheets API من ورقة البيانات، ولكن مع ترك قيم الخلايا بدون تغيير.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"updateCells": {
"range": {
"sheetId": SHEET_ID
},
"fields": "userEnteredValue"
}
}
]
}نسخ ورقة من جدول بيانات إلى آخر
تعرض عيّنة الرمز البرمجي التالية
spreadsheet.sheets.copyTo
كيفية نسخ ورقة واحدة يحدّدها SHEET_ID
من جدول بيانات إلى جدول بيانات آخر.
يحدّد المتغيّر TARGET_SPREADSHEET_ID في نص الطلب جدول البيانات الوجهة. تحتفظ النسخة بجميع القيم والتنسيقات والصيغ والخصائص الأخرى الخاصة بالمستند الأصلي. يتم ضبط عنوان الورقة المنسوخة على "نسخة
من [عنوان الورقة الأصلية]".
تتألف الاستجابة من كائن SheetProperties يصف خصائص ورقة البيانات التي تم إنشاؤها.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID/sheets/SHEET_ID:copyTo
{
"destinationSpreadsheetId": "TARGET_SPREADSHEET_ID"
}حذف ورقة
يوضّح نموذج الرمز البرمجي التالي spreadsheets.batchUpdate كيفية استخدام DeleteSheetRequest لحذف ورقة محدّدة بواسطة SHEET_ID.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate{
"requests": [
{
"deleteSheet": {
"sheetId": SHEET_ID
}
}
]
}قراءة بيانات جدول
يوضّح نموذج الرمز spreadsheets.get التالي كيفية الحصول على معلومات حول السمة sheet من جدول بيانات محدّد بواسطة SHEET_ID وSPREADSHEET_ID. تُستخدَم هذه الطريقة غالبًا لتحديد البيانات الوصفية للأوراق ضمن جدول بيانات محدّد، ما يتيح استهداف هذه الأوراق بعمليات إضافية. تحدّد مَعلمة طلب البحث fields أنّه يجب عرض بيانات خصائص ورقة البيانات فقط (بدلاً من بيانات قيم الخلايا أو البيانات المرتبطة بجدول البيانات بأكمله).
GET https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID?&fields=sheets.propertiesتتألف الاستجابة من مورد Spreadsheet يحتوي على كائن Sheet يتضمّن عناصر SheetProperties. إذا تم ضبط حقل ردّ معيّن على القيمة التلقائية، سيتم حذفه من الردّ.
{
"sheets": [
{
"properties": {
"sheetId": SHEET_ID,
"title": "Sheet1",
"index": 0,
"sheetType": "GRID",
"gridProperties": {
"rowCount": 100,
"columnCount": 20,
"frozenRowCount": 1
}
"tabColor": {
"blue": 1.0
}
},
...
],
}