gpt4 book ai didi

javascript - 在第一个分隔符上拆分列并在分隔符 gs 脚本之前和之后输出

转载 作者:行者123 更新时间:2023-11-30 20:51:51 29 4
gpt4 key购买 nike

对此很陌生

单元格数据如下:

colx
aa, bbb
oue, hed, ono
hud

需要它变成:

colx              coly     colz
aa, bbb aa bbb
oue, hed, ono oue hed, ono
hud hud

我需要在第一个定界符处拆分一列,然后将第一部分(第一个定界符之前的所有内容)发回原始列右侧的下一列中,然后发回字符串的其余部分(第一个定界符之后的所有内容)第一个分隔符)到原始列右侧的第二列

我在这里找到了 SplitTheString 函数: How do I split a string, breaking at a particular character?

我知道我的代码不工作,不知道如何修复它,尤其是如何输出数据

谢谢

function splitColumn() {
var range =getColRng("Elements","colx", 2)
var values = range.getValues());

for (var row in values[0]) {
values[row][0] == SplitTheString(ResultStr);)

}
range.setValues(values);
}

辅助函数:

 function SplitTheString(ResultStr) {
if (ResultStr != null) {
var SplitChars = ', ';
if (ResultStr.indexOf(SplitChars) >= 0) {
var DtlStr = ResultStr.split(SplitChars);
var name = DtlStr[0];
var street = DtlStr[1];
}
}
}

function getColRng(shtName, cheader,startrow) {
var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(shtName);
var lc = sheet.getMaxColumns();
var lr = sheet.getLastRow();
var hn = HTN(shtName,cheader)
return sheet.getRange(startrow, hn, lr);
}

最佳答案

下面的示例脚本怎么样?该脚本假定 A 列中有数据。

示例脚本:

function splitColumn() {
var ss = SpreadsheetApp.getActiveSheet()
var range = ss.getRange(1, 1, ss.getLastRow(), 1);
var values = range.getValues();
var result = [];
for (var i in values) {
if (i == 0) {
result.push([values[i][0], "coly", "colz"]);
} else {
var splitted = values[i][0].split(",");
var others = splitted.slice(1, splitted.length).join(",");
result.push([values[i][0], splitted[0], others]);
}
}
ss.getRange(ss.getLastRow()+1, 1, result.length, result[0].length).setValues(result);
}

输入:

enter image description here

输出:

enter image description here

如果我误解了你的问题,请告诉我。我要修改。

编辑:

function splitColumn() {
var ss = SpreadsheetApp.getActiveSheet();
var range = ss.getRange(2, 1, ss.getLastRow(), 1);
var values = range.getValues();
var result = [];
for (var i in values) {
if (values[i][0]) {
var splitted = values[i][0].split(",");
var others = splitted.slice(1, splitted.length).join(",");
result.push([splitted[0], others]);
} else {
result.push(["",""]);
}
}
ss.getRange(2, 2, result.length, result[0].length).setValues(result);
}

关于javascript - 在第一个分隔符上拆分列并在分隔符 gs 脚本之前和之后输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48102050/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com