Wie teile ich TextToColumns nur für Zellen auf, die Kommas in Google Apps Script enthalten?JavaScript

Javascript-Forum
Guest
 Wie teile ich TextToColumns nur für Zellen auf, die Kommas in Google Apps Script enthalten?

Post by Guest »

Ich bin ein absoluter Neuling bei Google Apps Script und bin auf eine Hürde gestoßen. Im Wesentlichen habe ich auf meiner Website ein Formular, das automatisch Namen und Adressen in eine Google-Tabelle einträgt, und die gesamte Adresse wird in eine Zelle eingegeben, in der Straße, Stadt + Bundesland, Postleitzahl und Land durch Zeilenumbrüche getrennt sind.< /p>
Letztendlich möchte ich die Adressdaten in einzelne Spalten (Straße, Stadt, Bundesland, Postleitzahl, Land) aufteilen, aber NUR für die Zellen, die die Zeilenumbrüche enthalten. Da regelmäßig neue Daten aus dem Website-Formular in das Google Sheet eingefügt werden, besteht das Ziel darin, dass das Skript die bereits getrennten Datenzeilen überspringt und die Daten einfach für die neuen Einträge am unteren Rand des Blatts trennt.< /p>
Hier ist meine aktuelle Funktion:

Code: Select all

function splitColumnV1() {

var ss = SpreadsheetApp.getActiveSpreadsheet();

var lastRowComma = ss.getLastRow();
var commaRange = ss.getRange('B2:B' + lastRowComma);      // range of the data containing cells I want to split

const searchText = '\n';
const replaceText = ', ';

commaRange                     // with the range, find all line breaks and replace with commas
.createTextFinder(searchText)
.replaceAllWith(replaceText);

for (var j = 0; j < lastRowComma; j++) {                      // for each cell value
if (j.getValues.createTextFinder(', ') != null) // currently getting the error here
{
j.splitTextToColumns(', ');     // if there are line breaks then split the text to columns
}
elseif (j.getValues.createTextFinder(', ') != null)
{
continue;            // if there are no commas in the cell then skip to the next cell
}
}
}
Derzeit funktioniert mein Code bis zum Abschnitt „for, if“, aber dann erhalte ich den Fehlercode: „TypeError: Eigenschaften von undefiniert können nicht gelesen werden (liest ‚createTextFinder‘)“
Wenn ich den gesamten „for, if“-Abschnitt entferne und ihn nur durch die Zeile „commaRange.splitTextToColumns(', '); ersetze, dann funktioniert es irgendwie, aber es ersetzt das bereits getrennte Daten durch leere Zellen. Jede Hilfe wäre sehr dankbar!

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post