javascript - 如何在 Google 表格中包含多个单词的单元格中搜索特定单词并返回结果?

标签 javascript google-apps-script google-sheets

这就是我想要实现的目标:

  1. 项目经理填写 Google 表单。它将结果发送到电子表格中,我想操作该数据。
  2. 第一个问题/单元格是产品使用的社交媒体,带有多项选择复选框。
  3. 如果有人勾选 Facebook 和 Twitter,单元格会返回“Facebook, Twitter”,而我在单元格中搜索“Twitter”时会遇到问题,因为它不是第一个。

这是我到目前为止所拥有的:

function testplan() {

var mainsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
var testplan = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("TestPlan");

var socialData = mainsheet.getRange(3, 3).getValues();
var socialDataText = socialData.length;
var fbSocial = "Facebook";
var twitSocial = "Twitter";

for (var i = 0; i < socialDataText; i++) {
if (socialData[i][0] == fbSocial) {
  testplan.getRange("A15").setValue("User can log into the app with Facebook.");
  testplan.getRange("A16").setValue("User can share content from the app with Facebook.");
} {
  return 0;
};
};

for (var i = 0; i < socialDataText; i++) {
if (socialData[i][0] == twitSocial) {;
  testplan.getRange("A17").setValue("User can log into the app with Twitter.");
  testplan.getRange("A18").setValue("User can share content from the app with Twitter.");
                     } {
     return 0;
};
};

第一个查找“Facebook”的命令有效,因为它是文本的第一位。但之后的任何东西都找不到。我进行了很多搜索,发现了一些接近的东西,但没有任何东西能按照我期望的方式工作。这可能是一个命令或一些我没有看到的非常明显的东西。

最佳答案

尝试

function testplan() {

    var mainsheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("Sheet1");
    var testplan = SpreadsheetApp.getActiveSpreadsheet().getSheetByName("TestPlan");

    var socialData = mainsheet.getRange(3, 3).getValues();
    var socialDataText = socialData.length;
    var fbSocial = "Facebook";
    var twitSocial = "Twitter";

    for (var i = 0; i < socialDataText; i++) {
        if (socialData[i][0].indexOf(fbSocial) > -1) {
          testplan.getRange("A15").setValue("User can log into the app with Facebook.");
          testplan.getRange("A16").setValue("User can share content from the app with Facebook.");
        };
        if (socialData[i][0].indexOf(twitSocial) > -1) {;
          testplan.getRange("A17").setValue("User can log into the app with Twitter.");
          testplan.getRange("A18").setValue("User can share content from the app with Twitter.");            
        };
    };
};

为了简单

关于javascript - 如何在 Google 表格中包含多个单词的单元格中搜索特定单词并返回结果?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30085199/

相关文章:

javascript - Object.prototype.toString() 的目的是什么?

mysql - 有没有办法同步 google sheets 和 MySQL,以便 google sheets 表中的编辑将更新 MySQL 中的表?

google-apps-script - 使用什么 Google Apps 脚本方法来获取重定向的 URL?

javascript - 如何将单元格的值设置为1 :00PM instead of 13:00:00 using java script?

javascript - 如何使下拉菜单的背景颜色为白色

javascript - 如何创建动态 Bootstrap 多选

google-sheets - (Google sheets) 从 url inject 查询并返回多个表

javascript - 更高效的 'remove duplicates' 函数

javascript - 每秒帧数

javascript - Google Apps 脚本中 PropertiesServices 的意外行为