يمكنك تعديل تنسيق الخلايا والنطاقات في جداول البيانات باستخدام Google Sheets API. توضّح الأمثلة الواردة في هذه الصفحة كيفية تنفيذ بعض عمليات التنسيق الشائعة باستخدام واجهة برمجة التطبيقات الخاصة بـ "جداول بيانات Google". يمكنك الاطّلاع على المزيد من أمثلة التنسيق الشرطي في صفحة وصفة التنسيق الشرطي.
عند تعديل جدول بيانات، قد تعرض بعض أنواع الطلبات ردودًا.
يتم عرض هذه الردود في مصفوفة، ويشغل كل رد الفهرس نفسه الذي يشغله الطلب المقابل. لا تتضمّن بعض الطلبات ردودًا، وفي هذه الحالة يكون الرد فارغًا. يمكنك الاطّلاع على بنية الردود لهذه الأمثلة ضمن
spreadsheets.batchUpdate
.
يتم تقديم هذه الأمثلة في شكل طلبات HTTP لتكون محايدة لغويًا. للتعرّف على كيفية تنفيذ تعديل مجمّع بلغات مختلفة باستخدام مكتبات برامج Google API، يمكنك الاطّلاع على تعديل جداول البيانات.
في هذه الأمثلة، يشير العنصران النائبان SPREADSHEET_ID وSHEET_ID إلى المكان الذي يجب فيه تقديم أرقام التعريف هذه. يمكنك العثور على رقم تعريف جدول البيانات في عنوان URL الخاص بجدول البيانات.
يمكنك الحصول على معرّف ورقة البيانات باستخدام طريقة
spreadsheets.get
. يتم تحديد النطاقات باستخدام ترميز A1. مثال على النطاق هو
الورقة1!A1:D5.
في الفيديو أعلاه، ستتعرّف على كيفية تنسيق خلايا جدول البيانات بطرق مختلفة، بما في ذلك: إنشاء صفوف ثابتة، وتنسيق الخلايا بخط عريض، وتطبيق تنسيق العملة، وإجراء عملية التحقّق من صحة الخلايا، وتقييد قيم الخلايا.
تعديل حدود الخلايا
يوضّح نموذج الرمز البرمجي
spreadsheets.batchUpdate
التالي كيفية استخدام
UpdateBordersRequest
لإضافة حدود متقطّعة باللون الأزرق إلى أعلى وأسفل كل خلية في النطاق A1:F10. ينشئ الحقل
innerHorizontal
حدودًا أفقية في الجزء الداخلي من النطاق.
سيؤدي حذف الحقل إلى إضافة حدود إلى أعلى النطاق بالكامل وأسفله فقط.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "updateBorders": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 6 }, "top": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "bottom": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, "innerHorizontal": { "style": "DASHED", "width": 1, "color": { "blue": 1.0 }, }, } } ] }
تنسيق صف العنوان
يوضّح نموذج الرمز البرمجي التالي
spreadsheets.batchUpdate
كيفية استخدام
RepeatCellRequest
لتنسيق صف عنوان في ورقة. يعدّل الطلب الأول لون النص ولون الخلفية وحجم خط النص ومحاذاة النص ويجعله غامقًا. يؤدي حذف فهارس الأعمدة في الحقل range
إلى تنسيق الصف بأكمله. يعدّل الطلب الثاني خصائص ورقة البيانات لتثبيت صف العناوين.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 1 }, "cell": { "userEnteredFormat": { "backgroundColor": { "red": 0.0, "green": 0.0, "blue": 0.0 }, "horizontalAlignment" : "CENTER", "textFormat": { "foregroundColor": { "red": 1.0, "green": 1.0, "blue": 1.0 }, "fontSize": 12, "bold": true } } }, "fields": "userEnteredFormat(backgroundColor,textFormat,horizontalAlignment)" } }, { "updateSheetProperties": { "properties": { "sheetId": SHEET_ID, "gridProperties": { "frozenRowCount": 1 } }, "fields": "gridProperties.frozenRowCount" } } ] }
دمج الخلايا
يوضّح نموذج الرمز البرمجي التالي
spreadsheets.batchUpdate
كيفية استخدام
MergeCellsRequest
لدمج الخلايا. يدمج الطلب الأول النطاق A1:B2 في خلية واحدة. يدمج الطلب الثاني الأعمدة في النطاق A3:B6، مع ترك الصفوف منفصلة.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 2, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_ALL" } }, { "mergeCells": { "range": { "sheetId": SHEET_ID, "startRowIndex": 2, "endRowIndex": 6, "startColumnIndex": 0, "endColumnIndex": 2 }, "mergeType": "MERGE_COLUMNS" } }, ] }
ضبط تنسيق مخصّص للتاريخ والوقت أو تنسيق عشري لنطاق
يوضّح نموذج الرمز البرمجي
spreadsheets.batchUpdate
التالي كيفية استخدام
RepeatCellRequest
لتعديل الخلايا لتضمين تنسيقات مخصّصة للتاريخ والوقت والأرقام. يمنح الطلب الأول الخلايا في النطاق A1:A10 تنسيق التاريخ والوقت المخصّص hh:mm:ss am/pm,
ddd mmm dd yyyy
. مثال على تنسيق التاريخ والوقت هذا: "02:05:07 PM, Sun Apr
03 2016".
يمنح الطلب الثاني الخلايا في النطاق B1:B10 تنسيق الأرقام المخصّص
#,##0.0000
، ما يشير إلى أنّه يجب تجميع الأرقام باستخدام فواصل، وأنّه يجب أن يكون هناك 4 أرقام بعد العلامة العشرية، وأنّه يجب حذف كل الأصفار البادئة باستثناء صفر واحد. على سبيل المثال، يتم عرض الرقم "3.14" على النحو "3.1400"، بينما يتم عرض الرقم "12345.12345" على النحو "12,345.1235".
لمزيد من المعلومات، يُرجى الاطّلاع على تنسيقات التاريخ والأرقام.
يظهر بروتوكول الطلب أدناه.
POST https://sheets.googleapis.com/v4/spreadsheets/SPREADSHEET_ID:batchUpdate
{ "requests": [ { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 0, "endColumnIndex": 1 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "DATE", "pattern": "hh:mm:ss am/pm, ddd mmm dd yyyy" } } }, "fields": "userEnteredFormat.numberFormat" } }, { "repeatCell": { "range": { "sheetId": SHEET_ID, "startRowIndex": 0, "endRowIndex": 10, "startColumnIndex": 1, "endColumnIndex": 2 }, "cell": { "userEnteredFormat": { "numberFormat": { "type": "NUMBER", "pattern": "#,##0.0000" } } }, "fields": "userEnteredFormat.numberFormat" } } ] }