هل من الممكن تضمين جدول بيانات Google في مستند Google à la Microsoft Excel و Microsoft Word؟ ماذا عن مخطط من جدول بيانات؟
بدءًا من اليوم (2016-05-20) ، بدأت Google في طرح القدرة على تضمين مخطط من جدول بيانات Google في مستند Google. في هذه المرحلة ، يتيح اثنان من حساباتي الثلاثة في Google الخيار في قائمة Insert
، مع قائمة فرعية جديدة Insert→Chart
أسفل عنصر Insert→Drawing…
.
عند إدراج مثل هذه الرسوم البيانية ، فإنها تظل مرتبطة بجدول البيانات الأصلي. إذا كان كل ما تريده هو بيانات مجدولة ، فهناك نوع مخطط جدول يمكنك استخدامه لتقديم بياناتك كجدول بسيط.
هناك بعض القيود في هذه المرحلة (على سبيل المثال فيما يتعلق بحجم المخطط) ويجب أن يكون المخطط موجودًا مسبقًا في جدول البيانات قبل أن تتمكن من إدراجه ، ولكن هذا يسير في الاتجاه الصحيح ...
لإدراج جدول بيانات أو جدول ، استخدم إضافة جدول من جداول بيانات Google عن طريق لصق النسخ من جداول البيانات إلى المستندات واختيار الخيار المرتبط.
لم يتم تحديث المخطط مباشرة إذا قمت بتعديل جدول البيانات المصدر أثناء فتح المستند الخاص بك ، ومع ذلك ، فإن المستند سيكشف التغييرات ويعطيك زر التحديث أعلى جدول البيانات المضمن ليعكس أحدث التغييرات في المصدر.
AFAIK ، يمكنك فقط النسخ واللصق من جدول البيانات إلى المستند النصي. يتم إدراج جدول البيانات كجدول ، ولكنه غير مرتبط: إذا قمت بتغيير شيء ما في جدول البيانات ، فلن ينعكس في المستند النصي.
بالطبع ، أحب بالتأكيد أن يثبت خطأ!
فيما يلي حل قائم على البرنامج النصي الذي يسمح للمرء بإدراج جدول يحتوي على محتويات من نطاق معين ضمن جدول بيانات معين. لم أحاول العثور على طريقة لمزامنة البيانات في الوقت الفعلي ، حيث لا يبدو الأمر عمليًا بالنظر إلى الحجم الكبير المحتمل للبيانات التي يجب نقلها مع كل تعديل على جدول البيانات. بدلاً من ذلك ، يضيف البرنامج النصي عنصر قائمة مخصص "بيانات التحديث" إلى المستند.
يجب أن يرتبط النص البرمجي بالمستند (أي يتم إنشاؤه باستخدام أدوات> محرر البرامج النصية في قائمة الوثيقة). يتم تحديد عنوان URL لجدول البيانات ، بالإضافة إلى الورقة والنطاق المطلوب استخدامه ، داخل البرنامج النصي. لتضمين جميع البيانات في الورقة ، استبدل .getRange(rangeName)
بـ .getDataRange()
.
عند تنفيذ وظيفة updateData لأول مرة ، يتم إلحاق الجدول في نهاية المستند. في عمليات التشغيل اللاحقة ، يتم تحديث الجدول في مكانه (أي إذا تمت إضافة المزيد من النص بعد الجدول ، فسيتم الاحتفاظ بالترتيب).
لاحظ أن قص الجدول يؤدي إلى كسر عملية التحديث (سيضيف البرنامج النصي جدولًا جديدًا في النهاية) نظرًا لأن النسخة الملصقة هي كائن جديد. بدلاً من ذلك ، قص النص حول الجدول.
function onOpen() {
DocumentApp.getUi()
.createMenu('Custom')
.addItem('Update Data', 'updateData')
.addToUi();
}
function updateData() {
var ssUrl = ' spreadsheet url here ';
var sheetName = 'Sheet2'; // name of sheet to use
var rangeName = 'A1:C3'; // range of values to include
var values = SpreadsheetApp.openByUrl(ssUrl)
.getSheetByName(sheetName)
.getRange(rangeName)
.getValues();
var doc = DocumentApp.getActiveDocument();
var body = doc.getBody();
var ranges = doc.getNamedRanges('embeddedSheet-range');
if (ranges.length == 0) {
var table = body.appendTable(values);
}
else {
tableRange = ranges[0];
table = tableRange.getRange().getRangeElements()[0].getElement();
var ind = body.getChildIndex(table);
tableRange.remove();
body.removeChild(table);
table = body.insertTable(ind, values);
}
var rangeBuilder = doc.newRange();
rangeBuilder.addElement(table);
doc.addNamedRange('embeddedSheet-range', rangeBuilder.build());
}
من الممكن أيضًا مزامنة البيانات كل ساعة ، بالإضافة إلى يدويًا. ما عليك سوى إضافة مشغل يستند إلى الوقت من قائمة الموارد في Script Editor ، بحيث يقوم بتشغيل وظيفة updateData.
يمكن للمرء أيضًا تكييف هذا النص البرمجي ليكون مرتبطًا بجدول البيانات المصدر بدلاً من ذلك. قد يتطلب هذا تغييرات في كيفية فتح المستند (على سبيل المثال ، عن طريق عنوان URL) ، ولكن المنطق هو نفسه.
الجزء المرهق من البرنامج النصي هو الحصول على مقبض الجدول الموجود في المستند. هذا يتطلب وضعه ضمن نطاق مسمى. أيضًا ، من الأفضل استبدال عنصر الجدول بالكامل من العبث بإدخالات جدول موجود. نظرًا لأن النطاق المحدد غير قابل للتغيير ، فإنه تتم إزالته أيضًا باستخدام الجدول الذي يحتوي عليه ، ثم يتم إنشاؤه مرة أخرى مع الجدول الجديد.
نعم يمكنك ذلك. انسخ محتويات الورقة والصقها في مستندك ، في الزاوية اليمنى سيسألك عما إذا كنت ترغب في الارتباط بجدول البيانات. إذا قمت بذلك ، بعد تحرير جدول البيانات ، يمكنك النقر فوق رمز التحديث في مستنداتك لدمج التغييرات في المستند.
البديل هو استخدام مواقع Google ، أو أي محرر محتوى آخر يسمح بتضمين محتوى iframes.
لتضمين جداول بيانات Google في صفحة مواقع Google