Bisakah saya mencetak Tanggal Cetak atau Simpan Tanggal di Google Documents?

8

Saya telah membuat dokumen pengolah kata yang akan digunakan oleh banyak orang (style sheet untuk penulis), dan juga akan diperbarui secara berkala. Saya curiga ada yang mencetak dokumen untuk referensi. Apakah mungkin di Google Documents untuk memasukkan kode bidang di footer yang menunjukkan tanggal cetak atau tanggal penyimpanan? Jika tidak, mungkin kita bisa memberi nama dokumen "[judul dokumen] versi [x]" dan mencetaknya di footer?

Selamat tinggal Stack Exchange
sumber
1
Pertanyaan yang hampir identik, ditanyakan dua tahun setelah pertanyaan ini: stackoverflow.com/questions/13585272/…
yurkennis

Jawaban:

3

Sayangnya, ini sepertinya tidak mungkin sekarang; Google Documents tidak mendukung bidang pembaruan otomatis yang dilakukan Office.

Ini adalah utas dukungan tempat Anda dapat meminta fitur ini, - Saya juga mengirim balasan.

Jarrod Dixon
sumber
Terima kasih; Saya menambahkan komentar juga. Utas itu memberi tahu saya cara menambahkan jumlah halaman (yaitu, halaman X dari Y), itu akan menjadi pertanyaan saya berikutnya!
Selamat Tinggal Stack Exchange
Sayangnya, tautan itu sudah usang.
Selamat Tinggal Stack Exchange
3

Ya itu mungkin. Namun, itu bukan sesuatu yang sangat mungkin menggunakan API yang ada. Sungguh kurangnya bidang dan kemampuan terkait seperti di Word adalah ketidakmampuan utama untuk otomatisasi dokumen.

Sesuatu seperti ini akan menyisipkan catatan kaki pada dokumen terbuka dan dibuka kembali, tetapi pada akhirnya bukan solusi yang baik.

function onOpen() {
    var time = new Date();
    time = Utilities.formatDate(time, "GMT", "yyyy-MM-dd'T'HH:mm:ss'Z'");
    var doc = DocumentApp.getActiveDocument();
    var s;

    if (!doc.getFooter()) {
        var footer = doc.addFooter();
        var footerText = footer.appendParagrap(time);
    } else {
        var footer = doc.getFooter();
        var footerElements = footer.getNumChildren();
        var para = footer.getParagraphs();
        s = para[footerElements-1].getText();
        var footerText = footer.replaceText(s , time);
    }
};

EDIT: Cara menambahkan skrip.

Kode ini seperti yang saya sajikan di atas benar-benar harus dalam fungsinya sendiri yang disebut dari fungsi OnOpen () daripada di sana grosir, tetapi semua baik untuk tujuan contoh.

Jika Anda masuk ke menu Alat dari dokumen terbuka lalu turun ke Script Manager, ketika memuat periksa bahwa itu saat ini kosong, jika memiliki catatan di sana, Anda berada di tempat Anda sendiri untuk penempatan kode.

Tutup pengelola skrip, kembali ke Menu Alat dan pilih Editor Skrip. Sekarang jika Anda tidak memiliki apa pun di pengelola skrip, pilih semua kode dan hapus. Anda kemudian dapat menempelkan kode yang disediakan di atas dan kemudian menyimpannya.

Tutup dokumen dan buka kembali dan Anda akan menemukan sekarang ada Tanggal Waktu di footer. Itu harus memperbarui pada setiap pembukaan dokumen, tidak ada yang mewah tetapi akan membuat Anda pergi.

Sekarang bagi Anda yang memiliki kode yang sudah dikaitkan dengan dokumen Anda. Menambahkan kode di atas minus baris pertama dan terakhir ke fungsi onOpen () juga akan berfungsi, tetapi itu mungkin bukan karena kode yang sudah ada bertentangan.

Semoga ini membuat Anda pergi.

jCisco
sumber
Mungkin Anda bisa memberi tahu orang-orang bagaimana cara menambahkan skrip?
Jacob Jan Tuinstra
@JacobJanTuinstra Saya memperbarui respons, saya harap ini membantu.
jCisco
0

Ini adalah perluasan dari jawaban jCisco, dan merupakan solusi set-and-forget yang berfungsi dengan baik di google docs, dan dapat diubah agar berfungsi untuk sheet dll.

  1. Masukkan ini ke bagian footer dokumen Anda:

    Tidak terkendali saat Dicetak / Disimpan: 2016-09-03 14:05. Segarkan pdf: goo.gl/xXXxxx

    Tautan goo.gl itu adalah versi singkat dari tautan berbagi "Siapa pun dapat melihat" dokumen Anda, tetapi ganti /edit?usp=sharingdi akhir tautan dengan /export?format=pdf(atau /export/pdfjika itu adalah lembaran). Lalu bawa tautan berbagi yang diedit ke goo.gl untuk mempersingkatnya.

  2. Buka editor skrip dokumen Anda (Alat> Editor Skrip ...) dan tambahkan kode di bawah ini. Anda harus membuka editor dari dalam dokumen sehingga Anda berakhir dengan skrip yang terikat pada dokumen, bukan skrip terpisah yang disimpan di drive google Anda.

Kode:

function DocControl() {
  var time = new Date();
  time = Utilities.formatDate(time, "GMT+10:00", "yyyy-MM-dd' 'HH:mm");
  var doc = DocumentApp.getActiveDocument();
  var bod = doc.getBody();
  var fol = bod.getParent();

  // Define a custom paragraph style.
  var style = {};
  style[DocumentApp.Attribute.FONT_FAMILY] = 'Proxima Nova';
  style[DocumentApp.Attribute.FONT_SIZE] = 8;
  style[DocumentApp.Attribute.ITALIC] = true;

  for (i = 0; i<fol.getNumChildren(); i++){
    var child = fol.getChild(i);
    if (child.getType() == DocumentApp.ElementType.FOOTER_SECTION) {
      var footerText = child.asFooterSection().replaceText("Uncontrolled when Printed\/Saved: (.*). Refresh pdf: ", "Uncontrolled when Printed\/Saved: " + time + ". Refresh pdf: ");
      footerText.setAttributes(style);
    }
  }
}

Anda mungkin ingin mengedit zona waktu (milik saya AEST) dan gaya paragraf yang sesuai dengan kebutuhan Anda.

  1. Tambahkan pemicu berbasis Waktu (Sumber Daya> Pemicu proyek saat ini). Atur untuk menjalankan "DocControl" setiap menit. Setel notifikasi ke mingguan.

Waktu di footer sekarang akan diperbarui setiap menit. Tidak perlu memiliki dokumen terbuka atau online dll karena server Google melakukan semua pekerjaan.

Namun Anda dapat mengharapkan untuk mendapatkan email mingguan dari google yang mendaftar sesekali skrip gagal berjalan, tetapi bagi saya itu hanya ~ 1% dari waktu, dan berjalan lagi pada menit berikutnya, jadi secara keseluruhan tidak masalah.

ajlowndes
sumber