Lakukan matematika dasar pada konten Dokumen Google (bukan spreadsheet)

11

Di Microsoft Word, dimungkinkan untuk menggunakan rumus yang sangat sederhana misalnya =SUM(ABOVE)untuk menampilkan total kolom atau lainnya =SUM(LEFT). Apakah mungkin melakukan hal serupa di Google Documents? Jelas ini dimungkinkan di Google Spreadsheets, tetapi saya perlu melakukannya dalam tabel di dokumen.

Jonathan Day
sumber

Jawaban:

3

Untuk menggambarkan penggunaan Script Aplikasi untuk tujuan tersebut, saya menulis fungsi yang menjumlahkan nilai yang dipilih dalam dokumen: baik dalam tabel, atau dalam paragraf, atau dalam beberapa paragraf, dll.

Itu dipanggil oleh perintah menu "Sum terpilih", ditemukan di bawah "Kustom"; item menu ini dibuat ketika dokumen dibuka. Teks pemilihan dibagi dengan spasi putih, dan kemudian masing-masing bagian ditafsirkan sebagai angka (jika mungkin). Nomor tersebut ditambahkan dan hasilnya ditampilkan kepada pengguna melalui alertdialog. (Saya mempertimbangkan untuk memasukkannya ke dalam dokumen, tetapi tidak ada tempat alami untuk itu: ketika pengguna memilih teks, posisi kursornya hilang.)

Ini adalah perhitungan satu kali; jika nilainya diubah, orang perlu melakukannya lagi.

function onOpen() {
  DocumentApp.getUi().createMenu('Custom').addItem('Sum selected', 'sum').addToUi();  
}

function sum() {  
  var selection = DocumentApp.getActiveDocument().getSelection();
  if (selection) {
    var elements = selection.getRangeElements();
    var s = 0;
    for (var i = 0; i < elements.length; i++) {
      var element = elements[i];
      var text = element.getElement().editAsText();
      if (text) {
        var str = text.getText();
        if (element.isPartial()) {
          str = str.slice(element.getStartOffset(), element.getEndOffsetInclusive() + 1);
        }
        var pieces = str.split(/\s+/);
        for (var j = 0; j < pieces.length; j++) {
          s += (parseFloat(pieces[j], 10) ? parseFloat(pieces[j], 10) : 0);
        }
      }
    }
    DocumentApp.getUi().alert(s);
  }
}

sumber
0

Menggunakan add-on Reversible Formula - Sketch-n-Script, Anda dapat menambahkan formula untuk menampilkan tabel dan juga untuk melakukan perhitungan JavaScript yang sewenang-wenang di atasnya.

Tulis di dokumen Anda:

expenses = ([10, 20, 30])
incomes = ([30, 20, “”])

=table([["Expenses", "Income"]].concat(rotate([expenses, incomes])))

Totals

=table([["Expenses", "Income"]].concat([[sum(expenses),sum(incomes)]]))

Klik pada "Nilai tampilan". Anda harus mendapatkan yang berikut - Saya menambahkan huruf tebal ke 'Total':

Rendering

Url add-on: https://chrome.google.com/webstore/detail/formulas-for-google-docs/kgjbgmonlnhglokmfnpnklegakfknbeh

Penafian: Saya penulis add-on ini. Penafian: Sampai sekarang, belum memungkinkan untuk memodifikasi tabel yang diberikan secara visual. Saya sedang mengerjakannya.

Mikaël Mayer
sumber