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]; 
} 
관련 문제