Google apps script 如何以与中相同的格式返回范围电子表格,使其成为逐行返回

Google apps script 如何以与中相同的格式返回范围电子表格,使其成为逐行返回,google-apps-script,google-sheets,Google Apps Script,Google Sheets,我是编程的初学者。 我对单元格A2中的电子表格进行查询,然后根据请求过滤数据并接收所需范围“I1:L16”。然后将数据返回平板电脑。平板电脑上的一切都很好,但阅读起来很不舒服,没有断线! 请告诉我如何以与电子表格中逐行返回的相同形式返回范围“I1:L16” 我的剧本 function doGet(e) { var sheet = SpreadsheetApp.openById("1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8"); sheet.g

我是编程的初学者。 我对单元格A2中的电子表格进行查询,然后根据请求过滤数据并接收所需范围“I1:L16”。然后将数据返回平板电脑。平板电脑上的一切都很好,但阅读起来很不舒服,没有断线! 请告诉我如何以与电子表格中逐行返回的相同形式返回范围“I1:L16”

我的剧本

function doGet(e)
{
  var sheet = SpreadsheetApp.openById("1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8");
  sheet.getRange("A2").setValue(e.parameter.p1) ;
  var n= sheet.getRange("I1:L16").getValues();
  return ContentService.createTextOutput(n);
}
电子表格

URL Web应用程序:示例查询


向你问好,亚历山大。

你可以这样做:

function doGet(e)
{
  var sheet = SpreadsheetApp.openById("1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8");
  sheet.getRange("A2").setValue(e.parameter.p1) ;
  var n= sheet.getRange("I1:L16").getValues();
  var retStr =""
  for(var i = 0 ; i< n.length ; i++){ 
   retStr += n[i].join("\t") +"\n" //Insert a tab between each element and newline at each row
  }
  return ContentService.createTextOutput(retStr);
}
函数doGet(e)
{
风险值表=电子表格app.openById(“1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8”);
表2.getRange(“A2”).setValue(即参数p1);
var n=sheet.getRange(“I1:L16”).getValues();
var retStr=“”
对于(var i=0;i
编辑:可选/稳健选项

更好的选择是为Html内容提供服务,这样可以利用Html标记改进数据的表示。 在下面的数据中,我假设您想要突出显示第6行,您可以使用css元素将文本设置为红色和粗体。 代码:

函数doGet(e)
{
风险值表=电子表格app.openById(“1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8”);
表2.getRange(“A2”).setValue(即参数p1);
var n=sheet.getRange(“I1:L16”).getValues();
var retStr=“.tcol{font-weight:bold;color:red;}”
对于(变量i=0;i

希望有帮助

亲爱的杰克!非常感谢您的快速回答!这正是我需要的。“AlexanderBaskakov我已经修改了上面的代码,以演示如何突出显示特定行。当您返回(在由颜色标识的电子表格中)Best Goods(致以最良好的问候)时,我是否可以突出显示或更改范围内找到的位置的字体颜色?”。但是,首先需要知道高亮显示哪一行。电子表格中的getValues()不提供有关单元格颜色的信息。您可以使用其他一些函数来确定具有不同背景颜色的行,并相应地高亮显示该行。
function doGet(e)
    {
      var sheet = SpreadsheetApp.openById("1UBKi7VDo1aJjn6IwGMKvlxy4Jz9d9jVdY79zpOrkQP8");
      sheet.getRange("A2").setValue(e.parameter.p1) ;
      var n= sheet.getRange("I1:L16").getValues();
      var retStr ="<style> .tcol { font-weight: bold; color : red; } </style> <table>"
      for(var i = 0 ; i< n.length ; i++){
       if ( i != 5) { //I assuming row 6 is what you want to highlight
        retStr +="<tr><td>"+ n[i].join("</td><td>") +"</td></tr>"
       } else {
        retStr +="<tr><td class = 'tcol'>" + n[i].join("</td><td class = 'tcol'>") +"</td></div></tr>"
       }

      }
      retStr += "</table>"
      return HtmlService.createHtmlOutput(retStr) 
     }