これでどうですか?
まず、生成できてるかどうか、Driveに作ってみるといいですよ。
サンプル:グラフをメールで送信するサンプル
参考:Google Apps Scriptでグラフをメールに添付して送る
Javascript
1// ドライブに保存
2function graphMailman() {
3 //スプレッドシートを取得
4 var ss = SpreadsheetApp.getActiveSpreadsheet();
5 var sheet = ss.getSheetByName('シート1');
6 var ui = SpreadsheetApp.getUi();
7
8 //グラフをPNG化
9 var chart = sheet.getCharts();
10 var image = chart[0].getBlob().getAs('image/png').setName('グラフ.png');
11
12 //生成先のフォルダを指定
13 var folderId = 'ここに生成先フォルダーのID';
14
15 try {
16 //フォルダにグラフ画像を生成する
17 var folder = DriveApp.getFolderById(folderId);
18 folder.createFile(image);
19 } catch (e) {
20 //エラーメッセージ
21 ui.alert(e.message);
22 return;
23 }
24
25 //メールを送信
26 MailApp.sendEmail({
27 to: GetUser(),
28 subject: 'グラフメールテスト',
29 body: '・テスト',
30 attachments: [image]
31 //htmlBody: '<img src="cid:preview"><br/>', //inlineで送る時はhtmlBodyにこうする
32 //inlineImages: {
33 // preview: image,
34 //}
35 });
36
37}
38
39//現在のユーザのアドレスを取得
40function GetUser() {
41 var objUser = Session.getActiveUser();
42 return objUser.getEmail();
43}