Setzen Sie ein = vor dem Textsprung
Nov 15 2020
Hallo, ich habe dieses Skript erstellt, um die Daten aus einer Spalte in eine TXT-Datei auf meinem Google-Laufwerk zu exportieren
function maquinasBonusHunt() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getActiveSheet();
var range = sheet.getRange('G3:G' + sheet.getLastRow());
var rows = range.getValues().filter(([g]) => g.toString() != "");
var fileName="maquinas.txt";
var folderName="Videos";
var data = rows.splice(0);
var str = data.map(function(e) {return e.join()}).join("\n");
var separador = [" - ", " = "];
var content = str;
// get list of folders with matching name
var folderList = DriveApp.getFoldersByName(folderName);
if (folderList.hasNext()) {
// found matching folder
var folder = folderList.next();
// search for files with matching name
var fileList = folder.getFilesByName(fileName);
if (fileList.hasNext()) {
// found matching file - append text
var file = fileList.next();
var combinedContent = content;
file.setContent(combinedContent);
}
else {
// file not found - create new
folder.createFile(fileName, content);
}
}
}
Alles ist in Ordnung, aber ich muss ein "=" setzen, bevor sie zu einem anderen Text springen, wie Sie ihn auf dem Screenshot zeigen. https://i.stack.imgur.com/xvXDA.png
Antworten
1 Tanaike Nov 15 2020 at 13:18
Ich glaube Ihr Ziel wie folgt.
- Sie möchten
=das letzte Zeichen jeder Zeile hinzufügen .
Um Ihr Ziel zu erreichen, möchte ich die folgende Änderung vorschlagen.
Muster 1:
In diesem Muster =wird hinzugefügt, wann ausgeführt joinwird.
Von:
var str = data.map(function(e) {return e.join()}).join("\n");
Zu:
var str = data.map(function(e) {return e.join()}).join("=\n") + "=";
Muster 2:
In diesem Muster =wird hinzugefügt, nachdem filterverwendet wurde.
Von:
var rows = range.getValues().filter(([g]) => g.toString() != "");
Zu:
var rows = range.getValues().filter(([g]) => g.toString() != "").map(([v]) => [v + "="]);
Verweise:
- beitreten()
- Filter()
- Karte()