1

Ich versuche hier Google App Script (GAS) zu verwenden. Ich habe eine code.gs beigefügt mit meinem Blatt. Ich hole Werte und sende woanders hin. In einer bestimmten Spalte des Blattes habe ich URLs zu einem Google-Dokument, das zusätzliche Informationen enthält.Wie lese ich Inhalte eines Google Docs aus dem Skript eines Google Sheets?

Also wenn ich N Zeilen lesen soll, muss ich den Inhalt von N jeweiligen Google Text & Tabellen lesen. Gibt es eine Möglichkeit für mich, diese Google-Dokumente innerhalb der code.gs, die dem Blatt beigefügt ist, zu öffnen und zu lesen?

EDIT:

ich, dass DocumentApp Klasse heraus verwenden, ich den Inhalt des Google-Dokuments lesen kann. Der folgende Code funktionierte für mich gut.

function myFunction() {  
    var doc = DocumentApp.openByUrl("https://docs.google.com/document/<ID>"); 
    var body = doc.getBody(); 
    // I had a table in all the docs. They are uniform in structure. 
    var table= body.getTables()[0]; 
    // My data was stored in the 10th row. 
    var row = t.getRow(10); 
    var res = row.getText(); 

    Logger.log(res); 

} 

Jetzt habe ich die nächste Stoßstange getroffen. Der Eigentümer von Google Sheet ist SAM. Alle Google Text & Tabellen, die SAM gehören, können mit dem obigen Code gelesen werden. Einige von ihnen gehören nicht SAM. Diese können nicht gelesen werden. Der Fehler, den ich bekomme, ist Execution failed: Action not allowed für die Linie doc = DocumentApp.openByUrl(...). Gibt es eine Möglichkeit, dieses Autorisierungsproblem zu umgehen?

Antwort

2

Dies ist eine Sicherheitsbeschränkung. SAM kann nur die Dokumente lesen, die ihm gehören oder mit ihm geteilt werden. Also müssen die Dokumente, die nicht SAM gehören, mit ihm vom tatsächlichen Besitzer der Dokumente geteilt werden.