gpt4 book ai didi

Javascript 从电子表格中读取数据

转载 作者:行者123 更新时间:2023-11-28 10:40:08 34 4
gpt4 key购买 nike

我正在使用 HTML 表单从 Google 电子表格获取数据。

我需要获取 SerNo= 2(或任何特定数字)的行我正在遍历工作表并尝试获取如下值 - 但它什么也没做

例如:SerNo Col2
2 选项1
3 选项2
4 选项3

所以,如果 SerNo=2 ...我想得到 Option1。这有 24 列,所以我使用了 getLastColumn

{function getDataRows_(ss, sheetname) {
var sh = ss.getSheetByName(sheetname);

var lr= sh.getLastRow();
for(var i=1;i<=lr;i++){
var SerNo1 = sh.getRange(i, 2).getValue();
if(SerNo1==SerNo){

return sh.getRange(i, 2, 1, sh.getLastColumn()).getValues();
}
}
}

----编辑---我已经发布了我使用的整个代码,因为它看起来像是我在错误的位置过滤记录

function read_value(request,ss){


var output = ContentService.createTextOutput(),
data = {};

var sheet="sheet1";


data.records = readData_(ss, sheet);

var callback = request.parameters.callback;

if (callback === undefined) {
output.setContent(JSON.stringify(data));
} else {
output.setContent(callback + "(" + JSON.stringify(data) + ")");
}
output.setMimeType(ContentService.MimeType.JAVASCRIPT);

return output;
}


function readData_(ss, sheetname, properties) {

if (typeof properties == "undefined") {
properties = getHeaderRow_(ss, sheetname);
properties = properties.map(function(p) { return p.replace(/\s+/g, '_'); });
}

var rows = getDataRows_(ss, sheetname),
data = [];

for (var r = 0, l = rows.length; r < l; r++) {
var row = rows[r],
record = {};

for (var p in properties) {
record[properties[p]] = row[p];
}

data.push(record);

}
return data;
}

function getDataRows_(ss, sheetname) {
var sh = ss.getSheetByName(sheetname);

return sh.getRange(2, 1, sh.getLastRow() -1,sh.getLastColumn()).getValues();

}



function getHeaderRow_(ss, sheetname) {
var sh = ss.getSheetByName(sheetname);

return sh.getRange(1, 1, 1, sh.getLastColumn()).getValues()[0];
}

最佳答案

我建议的一件事是不要一次检索行上的数据;换句话说,将要搜索的所有数据检索到数组中(即第 1 行到最后一行),然后测试数组的每一行,查找您的值。

关于Javascript 从电子表格中读取数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53016397/

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