如何在Google表格中搜索具有特定单词的多个单词并返回结果的单元格?

时间:2015-05-06 18:50:54

标签: javascript google-apps-script google-sheets

这就是我想要完成的事情:

  1. 项目经理填写Google表格。它将结果吐出到电子表格中,我想操纵该数据。
  2. 第一个问题/单元格是产品正在使用的社交媒体,带有多选复选框。
  3. 如果某人检查Facebook和Twitter,该单元格会返回“Facebook,Twitter”,而我在搜索单元格时遇到“Twitter”,因为它不是第一个。
  4. 这是我到目前为止所拥有的:

    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”的第一个命令有效,因为它是第一个文本。但是之后的任何事情都无法找到。我经常搜索并发现了很接近的东西,但是没有任何东西能像我期待的那样发挥作用。这可能是一个命令,或者我没有看到的非常明显的事情。

1 个答案:

答案 0 :(得分:0)

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.");            
        };
    };
};

为简单起见