Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/xslt/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 一个值的Google脚本筛选器范围_Javascript_Google Apps Script_Google Sheets_Google Sheets Api - Fatal编程技术网

Javascript 一个值的Google脚本筛选器范围

Javascript 一个值的Google脚本筛选器范围,javascript,google-apps-script,google-sheets,google-sheets-api,Javascript,Google Apps Script,Google Sheets,Google Sheets Api,我想过滤google工作表范围中只在第1列中包含特定值“Bob”的行。到目前为止,我的代码允许我过滤出列1中包含Bob的行。我需要相反,我想返回列1中只有“Bob”的行。因此,过滤器设置不是隐藏值或类似的内容 “filterSettings['criteria'][columnIndex]=!{'hiddenValues':[filterCriteria]” 我的查询类似于,但我不想排除带有筛选条件的行,我希望这些是唯一剩余的行 代码.gs var ss = SpreadsheetApp.get

我想过滤google工作表范围中只在第1列中包含特定值“Bob”的行。到目前为止,我的代码允许我过滤出列1中包含Bob的行。我需要相反,我想返回列1中只有“Bob”的行。因此,过滤器设置不是隐藏值或类似的内容
“filterSettings['criteria'][columnIndex]=!{'hiddenValues':[filterCriteria]”

我的查询类似于,但我不想排除带有筛选条件的行,我希望这些是唯一剩余的行

代码.gs

var ss = SpreadsheetApp.getActiveSpreadsheet();
var filterCriteria = 'Bob';


    var filterSettings = {};

    filterSettings.range = {
        sheetId: ss.getSheetByName('Sheet1').getSheetId()
                            };

    filterSettings.criteria = {};
        var columnIndex = 0;
    filterSettings['criteria'][columnIndex] = {
        'hiddenValues': [filterCriteria]
                                               };

    var request = {
      setBasicFilter: {
      filter: filterSettings
                      }
                  };
    Sheets.Spreadsheets.batchUpdate({'requests': [request]}, ss.getId());

在您的示例中,您希望排除除“Bob”之外的值。如果我的理解是正确的,那么这次修改如何

修改点:
  • 使用
    类型
    过滤标准
    • 类型
      文本_包含
      。值为“Bob”
    • 这样,只剩下包括“Bob”在内的值
修改脚本: 注:
  • 这个修改过的脚本假设您可以使用Sheets API
参考资料:

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

@Derek Morgan我很高兴你的问题得到解决。也谢谢你。你好,Tanaike!我正在阅读此回复,但这对我来说是非常新的(解决此问题的方法和此类代码).问题:如何使用从该脚本获得的数据?如何将其复制到其他工作表?我可以将其插入脚本中,但我不知道如何访问结果。这是Javascript吗?Thanks@Luis阿尔贝托·德尔加多·德拉弗洛感谢您的评论。我愿意支持您。但不幸的是,我无法理解您的情况。在为了了解这个问题,你能通过添加详细信息将其作为新问题发布吗?这样,它将帮助包括我在内的用户思考问题和解决方案。如果你能合作解决你的问题,我很高兴。@Tanaike感谢你的回复。我刚刚对此进行了一些研究,我发现这是“元数据”,是世卫组织成员le new world for me.我正在阅读一些关于它的博客,发现在我的工作表上创建一些CRUD类操作很有用。我会继续阅读,并提出一个问题(如果有的话):)
var ss = SpreadsheetApp.getActiveSpreadsheet();

var filterCriteria = {"type":"TEXT_CONTAINS","values":[{"userEnteredValue":"Bob"}]}; // Modified

var filterSettings = {};
filterSettings.range = {sheetId: ss.getSheetByName('Sheet1').getSheetId()};
filterSettings.criteria = {};
var columnIndex = 0;

filterSettings['criteria'][columnIndex] = {'condition': filterCriteria}; // Modified

var request = {setBasicFilter: {filter: filterSettings}};
Logger.log(JSON.stringify({'requests': [request]}))
Sheets.Spreadsheets.batchUpdate({'requests': [request]}, ss.getId());