1

Google Apps Scriptを初めて使用しています。開始する場所を理解するためには助けが必要です。Googleスプレッドの範囲を画像としてコピーしてメールで送信するためのスクリプト

私は、MS Excelの「画像としてコピー」オプションと同じことをするスクリプトを作成する必要があります。 Googleのシートにある特定のテーブルが写真としてコピーされ、電子メール(gmail)に貼り付けられる必要があります。グラフを画像に変換してメールで送信するコードが見つかりましたが、テーブルをコピーして画像として貼り付けるコードは見つかりませんでした。なぜなら、HTML形式でビルドするとIE:条件付き書式設定を維持できないことがわかっているからです。

他のフォーラムのユーザーは、「表をスライドに」スクリプトを提案し、表データが入っている範囲をとり、これをGoogleスライドに送信します。次に、スライドの中で、スライドをjpeg./pngとしてダウンロードします。ファイルを各スライドに追加してから、電子メールの本文に追加します。私はそれをやる方法も知らない。

答えて

1

条件付き書式とともにHTMLで表をレプリケートできます。

function drawTable() { 
    var ss_data = getData(); 
    var data = ss_data[0]; 
    var background = ss_data[1]; 
    var fontColor = ss_data[2]; 
    var fontStyles = ss_data[3]; 
    var fontWeight = ss_data[4]; 
    var fontSize = ss_data[5]; 
    var html = "<table border='1'>"; 
    for (var i = 0; i < data.length; i++) { 
     html += "<tr>" 
     for (var j = 0; j < data[i].length; j++) { 
      html += "<td style='height:20px;background:" + background[i][j] + ";color:" + fontColor[i][j] + ";font-style:" + fontStyles[i][j] + ";font-weight:" + fontWeight[i][j] + ";font-size:" + (fontSize[i][j] + 6) + "px;'>" + data[i][j] + "</td>"; 
     } 
     html += "</tr>"; 
    } 
    html + "</table>" 
    MailApp.sendEmail({ 
     to: Session.getActiveUser().getEmail(), 
     subject: "Spreadsheet Range", 
     htmlBody: html 
    }) 
} 


function getData(){ 
    var ss = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Raw").getDataRange(); 
    var background = ss.getBackgrounds(); 
    var val = ss.getDisplayValues(); 
    var fontColor = ss.getFontColors(); 
    var fontStyles = ss.getFontStyles(); 
    var fontWeight = ss.getFontWeights(); 
    var fontSize = ss.getFontSizes(); 
    return [val,background,fontColor,fontStyles,fontWeight,fontSize]; 
} 
関連する問題