Cipta Google Docs dari Helaian Google

Uncategorized
WebSetNet

Perniagaan anda boleh menggunakan Skrip Google Apps untuk menarik data dari baris dan lajur Helaian Google dan membuat Google Docs individu yang memasukkan hanya maklumat yang diperlukan. Ini boleh menjadikan perniagaan anda dan orang-orang yang menjalankannya lebih produktif.

Contohnya. Bayangkan peruncit batu bata dan pertengahan bersaiz sederhana. Syarikat itu telah membangunkan Lembaran Google dengan pelan pemasaran terperinci bagi setiap pembekal utamanya. Rancangan ini menerangkan taktik pemasaran tertentu mengikut bulan dan termasuk bajet untuk setiap taktik.

Lembaran Google syarikat itu mengandungi pelan pemasaran terperinci bagi setiap pembekal utamanya. Contoh ini menunjukkan hanya empat daripada mereka untuk Februari 2018.

Lembaran Google syarikat itu mengandungi pelan pemasaran terperinci bagi setiap pembekal utamanya. Contoh ini menunjukkan hanya empat daripada mereka untuk Februari 2018.

Salah satu pakar pemasaran syarikat ditugaskan untuk memberi setiap pembekal cadangan pemasaran. Jika pembekal menerima cadangan itu, ia akan membayar pengiklanan bersama, yang dalam kebanyakan kes adalah kira-kira separuh daripada kos promosi yang dirancang.

Tugas ini cukup mudah. Tetapi bagaimana jika pakar pemasaran ini perlu membuat cadangan untuk pembekal 100?

Itu mungkin memerlukan data menaip (atau sekurang-kurangnya memotong dan menampal) dari Lembaran Google untuk setiap 100 Google Docs secara manual, tugas yang sangat memakan masa.

Sebagai alternatif, pemasar boleh menulis pendek Skrip Google Apps dan mengautomasikan proses itu.

Skrip Google Apps

Skrip Google Apps adalah bahasa skrip mudah berdasarkan JavaScript. Menurut Google, ia membolehkan anda untuk "meningkatkan kuasa apl Google kegemaran anda" termasuk Dokumen dan Helaian.

Dalam amalan, ini bermakna anda boleh menggunakan Skrip Google Apps untuk menyesuaikan apl Google dan mencipta keupayaan baru. Dalam contoh ini, saya akan mengambil data dari contoh spreadsheet-taktik pemasaran dan menggunakannya untuk membuat beberapa cadangan pemasaran.

Langgan Skrip Google Apps

Sekiranya anda menggunakan Skrip Google Apps untuk kali pertama, anda perlu mengaitkannya dengan Google Drive anda.

Untuk membuat ini:

  • Buka Google Drive.
  • Klik ikon pemancingan.
  • Klik Tetapan.
  • Klik Manage Apps.
  • Klik Sambungkan lagi apl.
  • Cari Skrip Google Apps.
  • Membolehkannya.

Associate Google Apps Scripts dengan Google Drive anda.

Associate Google Apps Scripts dengan Google Drive anda.

Buat Templat Google Docs

Sekarang anda mempunyai spreadsheet penuh data, dan anda telah menyalin Skrip Google Apps dengan Google Drive anda, sudah tiba masanya untuk membuat templat untuk pelan pemasaran di Google Docs.

Untuk melakukan ini, cukup buat Google Doc yang mempunyai semua salinan berulang untuk cadangan pemasaran. Sekiranya anda perlu menggunakan kandungan dari hamparan, seperti nama perniagaan pembekal, gunakan pemegang tempat yang mudah.

Dalam imej di bawah, ## Supplier ## digunakan sebagai pemegang tempat untuk bidang pembekal dari spreadsheet.

Mencipta templat adalah semudah mencipta Google Doc. Gunakan ruang letak unik dalam templat anda supaya anda boleh menggantikannya dengan maklumat dari Helaian Google.

Mencipta templat adalah semudah mencipta Google Doc. Gunakan ruang letak unik dalam templat anda supaya anda boleh menggantikannya dengan maklumat dari Helaian Google.

Buat Skrip Google Apps

Untuk memulakan Skrip Google Apps baharu, buka Google Drive, dan klik kanan. Dalam menu yang terbuka, pilih "Lagi", kemudian pilih "Skrip Google Apps." Jika anda tidak melihat Skrip Google Apps sebagai pilihan, pastikan anda mengaitkannya dengan Google Drive anda.

Buat Skrip Google Apps baharu dari mana saja di Drive dengan klik kanan.

Buat Skrip Google Apps baharu dari mana saja di Drive dengan klik kanan.

-

Apabila anda mengklik Skrip Google Apps, anda akan melihat tab baharu dengan editor Skrip Apps. Kemudian, hidupkan API Helaian Google.

Anda akan melakukan kerja anda dalam editor Skrip Google Apps.

Anda akan melakukan kerja anda dalam editor Skrip Google Apps.

Dalam editor Aplikasi Skrip:

  • Klik Sumber.
  • Klik Advanced Google Services.
  • Cari API Lembaran dan hidupkannya.
  • Klik Konsol API Google.
  • Taip "Helaian API" dalam kotak carian.
  • Klik Dayakan API.
  • Kembali ke editor dan klik butang OK.

Ia perlu untuk menghidupkan beberapa API, termasuk API Lembaran.

Ia perlu untuk menghidupkan beberapa API, termasuk API Lembaran.

-

Tetapkan Pembolehubah untuk Helaian dan Templat

Menghidupkan perhatian kami kembali kepada editor, kami akan memulakan fungsi yang dipanggil createDocument ().

Fungsi ini bermula dengan tiga pembolehubah: tajuk, taktik, templateId.

var headers = Sheets.Spreadsheets.Values.get ('1U-6 ...', 'A2: I2'); taktik var = Sheets.Spreadsheets.Values.get ('1U-6 ...', 'A3: I6'); var templateId = '18PzF ...;

Dua pemboleh ubah pertama ini mengakses Lembaran Google dengan taktik pemasaran kami. Sheets.Spreadsheets.Values.get () mengakses Lembaran dan menerima dua parameter.

Parameter pertama ialah ID hamparan. Cara paling mudah untuk mencari ID ini ialah melihat bar alamat pada pelayar web anda apabila anda membuka Helaian.

Anda boleh mencari ID untuk mana-mana Helaian atau Dokumen Google dalam bar alamat apabila Helaian atau Dok itu dibuka dalam pelayar web anda.

Anda boleh mencari ID untuk mana-mana Helaian atau Dokumen Google dalam bar alamat apabila Helaian atau Dok itu dibuka dalam pelayar web anda.

-

Parameter kedua menggambarkan baris yang akan kami akses. Dalam contoh ini, tajuk di baris 2 di antara lajur A dan lajur I, dengan itu "A2: I2." Nilai-nilai yang kita mahu akses adalah dalam baris 3 melalui baris 6, dan juga dari lajur A ke lajur I. Jadi kita gunakan "A3: I6" untuk menentukan kawasan tersebut.

Tajuk berada di baris 2 antara lajur A dan lajur I, dengan itu "A2: I2." Nilai-nilai adalah dalam baris 3 melalui baris 6, dan juga dari lajur A ke lajur I. Jadi kita menggunakan "A3: I6" untuk menentukan kawasan tersebut.

Tajuk-tajuknya berada di baris 2 antara lajur A dan lajur I, dengan itu "A2: I2." Nilai-nilai adalah dalam baris 3 melalui baris 6, dan juga dari lajur A ke lajur I. Jadi kita menggunakan "A3: I6" untuk menentukan kawasan.

Pembolehubah ketiga - templateId - ialah ID untuk dokumen templat yang anda buat. Anda juga boleh mencari ID ini dalam bar alamat apabila anda mempunyai template terbuka.

Loop Over the Rows in the Sheet

Skrip Google Apps tidak mempunyai semua ciri yang terdapat dalam versi JavaScript yang terkini. Oleh itu, sementara kita mungkin menggunakan fungsi array untuk bekerja dengan data dari Helaian, kita sebaliknya perlu menggunakan untuk gelung.

untuk (var i = 0; i <taktik.values.length; i ++) {

Kami memulakan a untuk gelung dengan menetapkan nilai awal pemboleh ubah, dalam kes ini, i. Seterusnya kita tetapkan had gelung kepada panjang array kami. Akhir sekali, kita kenaikan pembolehubah i sehingga ia mencapai had.

Editor Skrip Google Apps mempunyai beberapa alat debugging dan pembangunan. Jadi, jika anda mahu melihat apa yang API Lembaran kembali, anda boleh mengakses logger.

Logger.log (taktik);

Anda perlu menjalankan fungsi tersebut, kemudian klik "Lihat, Log" untuk melihat output.

Kembali ke gelung, kami membuat pembolehubah untuk menyimpan nama pembekal.

var supplier = taktik.values ​​[i] [0];

Platform taktik objek mempunyai hak milik nilai, yang merupakan tatasusunan array mewakili setiap baris yang kami minta dari API Lembaran. Pemula itu, [I], akan menjadi barisan pertama kali pertama gelung berjalan dan baris kedua pada masa seterusnya gelung berjalan.

Platform [0] mewakili lajur pertama dalam helaian, yang merupakan nama pembekal. Khususnya, sejak kita memulakan barisan 3 untuk taktik, baris pertama dan lajur pertama akan menjadi A3, yang mempunyai nama pembekal, "Awesome Inc." Pada masa seterusnya gelung berjalan taktik.values ​​[i] [0] akan menunjuk kepada A4 dan pembekal, Syarikat Terbaik.

Taktik objek dalam skrip kami adalah pelbagai array yang mewakili empat baris taktik pemasaran pembekal dari Helaian Google. Medan pertama &lt;em&gt; [0] &lt;/ em&gt; di baris pertama ialah nama pembekal, Awesome Inc.

Taktik objek dalam skrip kami adalah pelbagai array yang mewakili empat baris taktik pemasaran pembekal dari Helaian Google. Bidang pertama [0] di baris pertama ialah nama pembekal, Awesome Inc.

Salin Templat

Baris seterusnya dalam kod tersebut akan menyalin templat kami dan menangkap ID dokumen yang disalin.

var documentId = DriveApp.getFileById (templateId) .makeCopy (). getId ();

Perhatikan bahawa kami menggunakan pemboleh ubah ID template dari atas. Juga, kami menggunakan API DriveApp. Anda mungkin perlu menghidupkan ini dengan cara yang sama yang anda menghidupkan API Lembaran.

Perintah ini terlebih dahulu mendapat template templat menggunakan ID templat. Seterusnya, ia membuat salinan templat dalam direktori Drive yang sama, dan akhirnya, ia mendapat ID untuk dokumen baru supaya kami boleh menggunakannya kemudian.

Pada masa ini, nama dokumen kami yang baru disalin adalah "Salinan" apa sahaja yang anda namakan templat anda, yang tidak begitu berguna, jadi kami akan menukar nama fail itu.

DriveApp.getFileById (documentId) .setName ('2018' + pembekal + 'Cadangan Pemasaran');

Pertama, kita dapat menggunakan fail dokumen yang kami ambil dalam langkah sebelumnya. Seterusnya, kami menetapkan nama itu. Perhatikan bahawa Skrip Google Apps menggunakan gaya penyambungan yang sama seperti JavaScript, jadi kami boleh menyambung rentetan seperti 2018 dengan pembolehubah seperti pembekal.

Kemas kini Templat

Baris seterusnya dalam Skrip Apps mengakses badan dokumen baru.

var body = DocumentApp.openById (documentId) .getBody ();

Perhatikan bahawa kami sekali lagi menggunakan ID dokumen yang ditangkap apabila kami menyalin templat, tetapi kali ini kami berinteraksi dengan API DocumentApp.

Perubahan pertama kami adalah untuk mengemas kini setiap contoh pemegang tempat nama pembekal kami, ## Supplier ##, dalam templat.

body.replaceText ('## Supplier ##', supplier)

Perhatikan itu menggantikanText mengambil dua parameter. Pertama, terdapat teks yang kita mahu ganti. Seterusnya ialah pembolehubah yang mewakili nama pembekal.

Langkah terakhir adalah untuk menambah senarai taktik kepada cadangan pemasaran. Untuk melakukan ini, kita panggil fungsi kedua, parseTactics, lulus nilai pengepala (iaitu "pembekal," "Komersial YouTube," "Hulu Komersial"); barisan taktik pemasaran; dan badan dokumen cadangan pemasaran.

parseTactics (headers.values ​​[0], taktik.values ​​[i], badan);

Platform parseTactics gelung fungsi ke atas setiap taktik dalam baris dan menambahnya kepada cadangan pemasaran jika ia mempunyai nilai.

fungsi parseTaktik (pengepala, taktik, badan) {untuk (var i = 1; i <taktik.length; i ++) {{taktik [i]! = '' && body.appendListItem (header [i] + '|' [i] + 'bersih'). setGlyphType (DocumentApp.GlyphType.BULLET); }}}

Perhatikan bahawa kita menetapkan nilai awal pembolehubah i kepada 1 dan bukannya 0. Ini kerana kedudukan 0 dalam array ialah nama pembekal. Kami mahu bermula dengan kedudukan 1, yang akan menjadi nilai taktik Komersial YouTube.

untuk (var i = 1; i <taktik.length; i ++)

Array JavaScript adalah berasaskan sifar. Jadi item pertama dalam array berada dalam kedudukan 0. Item kedua berada dalam kedudukan 1.

Array JavaScript adalah berasaskan sifar. Jadi item pertama dalam array berada dalam kedudukan 0. Item kedua berada dalam kedudukan 1.

Kami menggunakan teknik yang dipanggil penilaian litar pintas untuk menambah setiap taktik.

{taktik [i]! = '' && body.appendListItem (pengepala [i] + '|' + taktik [i] + 'bersih') .setGlyphType (DocumentApp.GlyphType.BULLET); }

Pertama, kita periksa untuk melihat apakah taktik mempunyai nilai. Khususnya, kami bertanya sama ada "taktik ini tidak sama dengan rentetan kosong."

taktik [i]! = ''

Kemudian kami menggunakan operator "dan" &&. Ini mengatakan bahawa kedua-dua perkara itu mestilah benar. Oleh itu, jika taktik medan kosong, itu tidak benar dan barisan berikutnya kod kami tidak akan berjalan.

body.appendListItem (pengepala [i] + '|' + taktik [i] + 'bersih')

Bahagian seterusnya kod menambah item senarai (seperti senarai bullet) ke dokumen cadangan pemasaran. Secara lalai, API mahu membuat senarai yang diperintahkan, seperti dalam 1., 2., 3. Jadi seterusnya kita tetapkan jenis glyph senarai ke BULLET.

.setGlyphType (DocumentApp.GlyphType.BULLET);

Buat Dokumen

Kami telah menyelesaikan kod yang diperlukan untuk menjana cadangan pemasaran dari spreadsheet. Kami hanya perlu menjalankan kod kami.

Dalam editor Skrip Google Apps, pilih "createDocument" dari menu drop-down dan klik "Jalankan."

Pastikan anda mempunyai fungsi yang betul yang dipaparkan dalam menu lungsur kemudian klik &quot;Jalankan.&quot;

Pastikan anda mempunyai fungsi yang betul yang dipaparkan dalam menu lungsur kemudian klik "Jalankan."

-

Ini akan menghasilkan empat contoh cadangan pemasaran dalam folder yang sama seperti templat kami.

Cadangan pemasaran baru akan dibuat dalam folder yang sama seperti templat.

Cadangan pemasaran baru akan dibuat dalam folder yang sama seperti templat.

-

Setiap cadangan pemasaran akan termasuk nama pembekal dan taktik jabatan pemasaran yang ada untuk mereka.

Cadangan pemasaran yang lengkap disesuaikan dengan setiap pembekal dan hanya memasukkan taktik yang dicadangkan untuknya.

Cadangan pemasaran yang lengkap disesuaikan dengan setiap pembekal dan hanya memasukkan taktik yang dicadangkan untuknya.

-

Inilah skrip lengkap yang digunakan dalam contoh ini.

fungsi createDocument () {var headers = Sheets.Spreadsheets.Values.get ('1U-6Fa6GF62dLI0NAhAMWdaSsEWvY4FDhDWLUVxaCv24', 'A2: I2'); var taktik = Sheets.Spreadsheets.Values.get ('1U-6Fa6GF62dLI0NAhAMWdaSsEWvY4FDhDWLUVxaCv24', 'A3: I6'); var templateId = '18PzFAptRi36PR8CvJ2rVr3IVCGBMCNoCsG7UpOymPHc'; untuk (var i = 0; i <tactics.values.length; i ++) {var supplier = tactics.values ​​[i] [0]; / / Buat salinan fail templat var documentId = DriveApp.getFileById (templateId) .makeCopy (). GetId (); // Namakan semula fail yang disalin DriveApp.getFileById (documentId) .setName ('2018' + pembekal + 'Cadangan Pemasaran'); / / Dapatkan badan dokumen sebagai pemboleh ubah var body = DocumentApp.openById (documentId) .getBody (); // Masukkan nama pembekal body.replaceText ('## Supplier ##', pembekal) // Tambah taktik parseTactics (headers.values ​​[0], taktik.values ​​[i], badan); }} parseTactics (pengepala, taktik, badan) {untuk (var i = 1; i <taktik.length i ++) {{taktik [i]! = '' && body.appendListItem (pengepala [i] + ' + taktik [i] + 'bersih'). setGlyphType (DocumentApp.GlyphType.BULLET); }}}

Source

Tinggalkan Jawapan Teks

Alamat email anda tidak akan disiarkan. Ruangan yang diperlukan ditanda *

Laman web ini menggunakan Akismet untuk mengurangkan spam. Ketahui bagaimana data komen anda diproses.