2017-05-09 9 views
0

IFTTTを使用して、自分のメールアドレスに送信されたフォームをGoogleシートにプッシュします。内容は1つの大きな集まりの中で列Aに貼り付けられます。形式を整える方法でテキストを列に分割する方法を理解することはできません。理想的には、私が列A.ここGoogleスプレッドのフォームで「テキストを列に分割する」ためのスクリプト

の右側の列で、フォーム上の質問への回答のみを含めるしたい列Aに貼り付けます何のサンプルです:

New customer message on May 9, 2017 at 12:15 PM 

You received a new message from your Online Store's contact form. 

Name: 

Jon Snow 

Email: 

[email protected] 

Q1: 

Yes 

Q2: 

No 

Q3: 

yes 

Q4: 

no 

Q5: 

no 

です列Aの右側にある7列の5つの質問に名前、電子メールアドレス、および回答を表示するために使用できるスクリプトがありますか?

答えて

0

私はあなたが好きなときにあなたが構築することができる初歩的な解決策を持っています。いくつかのことを前提としてい

私の解決策は、まず名前は常に2つの第二の答えは常にそうであることを行っている言葉、または全くになるだろう。

これは、ソリューション全体を特定の方法で文字列を分割に基づいて、それはスペースの量や書式設定を前提としていて、それは非常に流動的ではありませんされて列Aの行の任意の数の

に動作します常に同じです。それはスタートです:)

function myFunction() { 
    var ss = SpreadsheetApp.getActiveSheet(); 
    var dataRangelength = ss.getDataRange().getLastRow(); 
    var strRef = ss.getRange("A1:A" + dataRangelength); 
    var str = strRef.getValues(); 

    for (var i = 0; i < dataRangelength; i++) { 
    var row = str[i]; 
    var A1ref = i + 1 
    var rowRef = ss.getRange("A" + A1ref); 
    if (row != "") { 

    var arr = row.toString().split(" "); 
    var arr1 = arr[20].toString().split("\n"); 
    var arr2 = arr[21].toString().split("\n"); 

    rowRef.offset(0, 1).setValue(arr1[4] + " " + arr2[0]); 
    rowRef.offset(0, 2).setValue(arr2[4]); 
    rowRef.offset(0, 3).setValue(arr2[8]); 
    rowRef.offset(0, 4).setValue(arr2[12]); 
    rowRef.offset(0, 5).setValue(arr2[16]); 
    rowRef.offset(0, 6).setValue(arr2[20]); 
    rowRef.offset(0, 7).setValue(arr2[24]); 
    }} 
} 
関連する問題