6

I'm trying to populate an invoice. I have a Google Spreadsheets that calculates hours per project, and I want to bring that into a Google Docs. Despite much searching, I have found no way to do this.

I thought IMPORTRANGE would work as a new equation, but no luck.

How do you enter a formula into a Google Docs?

  • That can only be achieved though the usage of Google Apps Script. – Jacob Jan Tuinstra Feb 7 '14 at 22:06
  • jezz, and here I thought Import-range was going to work, ha! Okay. I'll get this cracking. Thankyou Jacob! – Eric Feb 7 '14 at 22:48
6

The following piece of code will create a Google Document and will insert a dynamic text, as a paragraph, into the newly created document. All is done from within a Google Spreadsheet.

Code

// global
var ss = SpreadsheetApp.getActive();

function onOpen() {
  var menu = [{name: "Create Document", functionName: "createDoc"}];
  ss.addMenu("Extra", menu);
}

function createDoc() {
  var sh = ss.getActiveSheet(), aRow = sh.getActiveCell().getRowIndex();
  var title = sh.getRange(aRow, 1).getValue(), docDate = new Date(); 
  var docTitle = title + "-" + docDate, doc = DocumentApp.create(docTitle);

  // create text in document
  var body = doc.getBody();
  body.appendParagraph("A paragraph " + docTitle); 

  // create app and panel
  var app = UiApp.createApplication().setTitle("Open Google Document")
    .setHeight(50).setWidth(400);
  var vPanel = app.createVerticalPanel()
    .add(app.createAnchor(docTitle, doc.getUrl()));

  // add to app
  app.add(vPanel);
  ss.show(app);  
}

Add

The code in your Google Spreadsheet, under Tools>Script editor. Press the bug button to authenticate the code and all is set to go.

Example

I've created an example file for you: create Google Document with text

0

You might be able to do something using the free add-on Reversible Formulas. I enables users to insert formulas anywhere in the document and compute them.

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

It supports all JavaScript formulas (including codes that use other Google Apis), plus for simple formulas, it enables users to modify the formula by changing the value.

Disclaimer: I'm the author of this add-on that I develop during my postdoctoral research

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.