1

下記のgoogle-email-scriptを使用して、Googleシートからメールでデータを送信しています。Google Email Scriptで入力形式を統一するにはどうすればよいですか?

https://developers.google.com/apps-script/articles/sending_emails

私の問題 シートに情報を入れて別の人がいます。データがシートにどのように入力されるかに応じて、フィールドの書式が変更されます。たとえば、パーセンテージデータを10進数の書式[6.98% -> 0.0698]に変更しました。他の人は、すでに%記号のない10進形式のデータを与えます。

両方の方法でデータを入力する方法はありますか?

マイスクリプト

function sendEmails() { 
    var sheet = SpreadsheetApp.getActiveSheet(); 
    var startRow = 2; // First row of data to process 
    var numRows = 300; // Number of rows to process 

    var dataRange = sheet.getRange(startRow, 1, numRows, 5) 
// Fetch values for each row in the Range. 
    var data = dataRange.getValues(); 
    for (var i = 0; i < data.length; ++i) { 
    var row = data[i]; 
    var emailAddress = row[0]; // First column 
    var message = 'Hi ' + row[2] + '\n' 
    + 'text before data,' + row[3] + 'text after data.' 
    + '\n\n' 
    +'more text data' 
+0

SO ...私は、この側の言語とスタイルの面であなたの質問を改善しようとする歓迎。 [こちら] [https://stackoverflow.com/help/mcve]と[ここ] [https://stackoverflow.com/help/how-to-ask]をご覧ください。たとえば、スクリプト内で何が機能していないかを特定し、サンプルデータを追加することができます。 –

答えて

2

getValue()

範囲の左上のセルの値を返します

。値はセルの値に応じて数値、ブール値、日付、またはストリングのいずれかです。

ので、スクリプトのgetValue()は常に10進数パーセント値を読みますあなただけの割合でとして表示する値が必要な場合は

[シートに表示されているものを手に入れるgetDisplayValue()を使用します]電子メールgetValue() | data[i][3]に変更し、数値をパーセントで* 100に変更してください。

var message = 'Hi ' + row[2] + '\n' 
+ 'text before data,' + (row[3] * 100) + '%' + ' text after data.' 
+ '\n\n' 
+'more text data' 
関連する問題