2017-05-09 1 views
0

Ich verwende IFTTT, um an meine E-Mail-Adresse gesendete Formulare an ein Google-Blatt zu senden. Der Inhalt wird in einem großen Büschel in die Spalte A eingefügt, und ich kann nicht herausfinden, wie man den Text in Spalten aufteilt, die gut formatiert sind. Im Idealfall würde ich nur gerne die Antworten auf Fragen über die Form in den Spalten rechts von Spalte A enthaltenSkript für "Text in Spalten teilen" mit Formular in Google Tabellen

Hier ist ein Beispiel von dem, was in Spalte A eingefügt wird:

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 

Ist Gibt es eine Art Skript, mit dem ich den Namen, die E-Mail-Adresse und Antworten auf die 5 Fragen in den 7 Spalten rechts von Spalte A anzeigen kann?

Antwort

0

Ich habe eine rudimentäre Lösung, auf die Sie bauen können, wenn Sie möchten.

Meine Lösung ein paar Dinge geht davon aus, zunächst die Name wird immer zwei Worte sein, zweitens die Antworten werden immer mit ja oder nein sein.

Dies wird für eine beliebige Anzahl von Zeilen in Spalte A arbeitet

Die gesamte Lösung auf Aufspaltung die Zeichenfolge in einer bestimmten Art und Weise basiert, und es ist nicht sehr flüssig, da es die Menge der Räume und die Formatierung übernimmt wird immer gleich sein. Es ist ein Anfang :)

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]); 
    }} 
} 
Verwandte Themen