Incorpora il foglio di calcolo di Google nel documento di Google


82

È possibile incorporare un foglio di calcolo Google in un documento Google à Microsoft Excel e Microsoft Word? Che ne dici di un grafico da un foglio di calcolo?


1
Puoi copiare e incollare un grafico dai tuoi fogli di calcolo in un documento. Non ho avuto fortuna con il tentativo di incorporare il foglio di calcolo stesso. Ho inviato questo come richiesta di funzionalità nel gruppo Google per la documentazione.
Mikeschuld

Risposte:


24

Da oggi (20/05/2016), Google sta iniziando a implementare la possibilità di incorporare un grafico da un foglio di calcolo di Google in un documento di Google. A questo punto, due dei miei 3 account Google rendono disponibile l'opzione nel Insertmenu, con un nuovo Insert→Chartsottomenu sotto la Insert→Drawing…voce.

Quando si inseriscono tali grafici, questi rimangono collegati al foglio di calcolo originale. Se tutto ciò che desideri sono dati tabulari, esiste un tipo di grafico a tabella che puoi utilizzare per presentare i tuoi dati come una semplice tabella.

Ci sono alcune limitazioni in questa fase (ad es. Riguardo alla dimensione del grafico) e il grafico deve preesistere nel foglio di calcolo prima di poterlo inserire, ma sta andando nella giusta direzione ...


Per inserire un foglio di calcolo o una tabella, usa Aggiungi una tabella da Fogli Google copiando e incollando da Fogli a Documenti e scegli l'opzione collegata.

Il grafico non viene aggiornato in tempo reale se si modifica il foglio di calcolo di origine mentre il documento è aperto, tuttavia, il documento rileverà le modifiche e fornirà un pulsante Aggiorna sopra il foglio di calcolo incorporato per riflettere le ultime modifiche alla fonte.


Ciò significa che se il foglio di calcolo utilizza una formula o un'equazione che cambia automaticamente (ad esempio, in base a una determinata data), non si aggiornerà?
Erik Humphrey,

Non l'ho testato, ma sospetto che devi aprire il foglio di calcolo per aggiornare il grafico e quindi accettare di aggiornare il grafico nei documenti che lo incorporano. Se trovi diversamente, faccelo sapere.
Jean-Rene Bouvier,

1
A partire da oggi, si può anche incorporare una tabella ; poiché la tua risposta è quella accettata, potresti voler modificare questa nuova funzione.

1
Grazie per l'informazione re. incorporamento diretto della tabella. A questo punto la funzione non sembra ancora funzionare nel mio account Google Apps for Work. Aggiornerò il mio post non appena noto che lo fa.
Jean-Rene Bouvier,

@Michelle Ho provato e non sembra possibile. Non vedo alcun pulsante "Aggiorna" su una tabella che è stata copiata da un file di fogli.
ADTC,

32

AFAIK, puoi solo copiare e incollare dal foglio di calcolo al documento di testo. Il foglio di calcolo viene inserito come tabella, ma non sono collegati: se si modifica qualcosa nel foglio di calcolo, non verrà riflesso nel documento di testo.

Certo, mi piacerebbe assolutamente essere smentito!


1
Purtroppo, a questo punto appare la mia unica opzione.
Ale

1
Vedi la mia risposta di seguito, ora c'è una nuova opzione che la rende un po 'più amichevole e prevede aggiornamenti dinamici.
Jean-Rene Bouvier,

11

Ecco una soluzione basata su script che consente di inserire una tabella con i contenuti di un determinato intervallo all'interno di un determinato foglio di calcolo. Non ho cercato di trovare un modo per sincronizzare i dati in tempo reale, in quanto non sembrava pratico dato il volume potenzialmente grande di dati che avrebbero dovuto essere trasferiti con ogni modifica al foglio di calcolo. Al contrario, lo script aggiunge una voce di menu personalizzata "aggiorna dati" al documento.

Lo script dovrebbe essere associato al documento (ovvero, creato usando Strumenti> Script Editor nel menu del documento). L'URL del foglio di calcolo, nonché il foglio e l'intervallo da utilizzare, sono specificati nello script. Per incorporare tutti i dati sul foglio, sostituire .getRange(rangeName)con .getDataRange().

Quando la funzione updateData viene eseguita per la prima volta, aggiunge la tabella alla fine del documento. Alle successive esecuzioni aggiorna la tabella in atto (ovvero, se viene aggiunto più testo dopo la tabella, l'ordine verrà conservato).

Nota che incollare la tabella interromperebbe il processo di aggiornamento (lo script aggiungerebbe una nuova tabella alla fine) poiché la copia incollata è un nuovo oggetto. Invece, taglia e incolla il testo attorno alla tabella.

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());
}

Note tecniche

  1. È anche possibile sincronizzare i dati ogni ora, oltre a manualmente. Basta aggiungere un trigger basato sul tempo dal menu Risorse dell'Editor di script, in modo che esegua la funzione updateData.

  2. Si può anche adattare questo script per essere associato al foglio di calcolo di origine. Ciò richiederebbe modifiche nel modo in cui il documento viene aperto (ad es. Tramite URL), ma per il resto la logica è la stessa.

  3. La parte ingombrante dello script sta ottenendo l'handle della tabella esistente nel documento. Ciò richiede di posizionarlo all'interno di un intervallo denominato. Inoltre, è molto più conveniente sostituire completamente l'elemento della tabella che pasticciare con le voci di una tabella esistente. Poiché un intervallo denominato non è modificabile, viene rimosso anche con la tabella in esso contenuta e quindi creato di nuovo, insieme alla nuova tabella.


Funziona alla grande. Qualche modo per ottenere la formattazione (in particolare i colori di sfondo delle celle)?
Cheshirekow,

NOTA: apparentemente l '"URL del foglio di calcolo" dovrebbe contenere l'URL completo, incluso il /edit#gid=0materiale alla fine.
Cheshirekow,

Non è possibile importare la formattazione di un altro foglio di calcolo.

Anche i collegamenti non vengono trasferiti, né i colori. Esiste un modo per modificare questo script per includere tutta la formattazione? Molto intelligente aggirare il problema del cut-paste, ha funzionato come un fascino!
unc0nnnected

4

Si, puoi. Copia il contenuto di un foglio e incollalo nel tuo documento, nell'angolo destro ti verrà chiesto se desideri collegarti al foglio di calcolo. In tal caso, dopo aver modificato il foglio di calcolo, puoi fare clic sull'icona di aggiornamento nei tuoi documenti per incorporare le modifiche al tuo documento.


All'inizio del 2018, questa è la risposta migliore per la parte della domanda relativa all'inserimento di una tabella di fogli Google in un documento Google.
dlukes

E per quanto ne so, il motivo per cui ho trovato questo thread è che è limitato a 400 celle.
Trey,

3

Un'alternativa è utilizzare Google Sites o qualsiasi altro editor di contenuti che consenta l'incorporamento di contenuti iframe.

Per incorporare fogli di calcolo di Google in una pagina di Google Sites

  1. Crea un nuovo sito o vai a un sito esistente.
  2. Crea una nuova pagina o fai clic su Modifica in una pagina esistente.
  3. Fai clic su Inserisci> Drive> Foglio di calcolo
  4. Seleziona il foglio di calcolo
  5. Imposta le opzioni
  6. Clicca su Salva
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.