2016-12-29 11 views
1

スクリプトを実行するGoogleスプレッドシートにメニューボタンを作成しようとしています。 このスクリプトは、特定の行と列を抽出し、XMLファイルにエクスポートする必要があります。GoogleスプレッドシートをXMLファイルにエクスポート

ContentServiceを使用してXMLファイルを書き込もうとしていますが、動作していないようです。助けることができる例やチュートリアルはありますか?

ありがとうございました

答えて

3

エラーメッセージが表示されますか?あるいは、具体的に何が機能していないのでしょうか?

は、私はちょうどそれをテストしてみた、それは罰金だ、ここにところで、私のスニペット

function doGet(e) { 
    var content; 
    try { 
    content = doIt(e); 
    } catch(err) { 
    content = '<error>' + (err.message || err) + '</error>'; 
    } 
    return ContentService.createTextOutput(content) 
    .setMimeType(ContentService.MimeType.XML); 
} 

function doIt(e) { 
    if (!e) throw 'you cannot run/debug this directly\nyou have to either call the url or mock a call'; 
    if (!e.parameter.id) throw '"id" parameter not informed. Please provide a spreadsheet id.'; 

    var values = SpreadsheetApp.openById(e.parameter.id) 
    .getSheets()[0].getRange('A1:B2').getValues(); 
    return '<sheet>' + values.map(function(row, i) { 
    return '<row>' + row.map(function(v) { 
     return '<cell>' + v + '</cell>'; 
    }).join('') + '</row>'; 
    }).join('') + '</sheet>'; 
} 

だ、私はテストに誰のためのユーザーとして実行されているウェブアプリとしてこのスクリプトを公開した。https://script.google.com/macros/s/AKfycbwrctRyspI2LnZ5hP8CMm7yY96jebLQS_4LShaKr_RIUKLm9qg/exec?id=スプレッドシートIDはここに貼り付けます

+0

ありがとうございます!その作業は今、スクリプトをwebappとして展開するというトリックです。 – Shatazone

+0

これは私がgoogleと完全に混同しているところです - あなたのスクリプトは私のドキュメントを閲覧する権限を必要としていますが、明らかに私はあなたに(嫌がらせ)したくありません。 – v3nt

+0

このスクリプトはA1:スプレッドシートのURLにidを指定すると(xml出力を生成する)しかし、コード全体が答えで利用可能です。スクリプトを信用しないと(実際にはそうしてはいけない)、コードをコピーして自分で展開することができます。 –

関連する問題