我具有以下标签结构
+------------+------------+---------------+
| label | sub-label | sub-sub-label |
+------------+------------+---------------+
| 01-fruit | | |
| | 01-apples | |
| | | green |
| | | red |
| | 02-oranges | |
| | | red |
| | | orange |
| 02-veggies | | |
| | 01-peppers | |
| | | green |
| | | red |
+------------+------------+---------------+
使用的脚本是:
function mail2Sheets() {
var ss = SpreadsheetApp.getActive();
var sheet = ss.getSheetByName('newRec'); //get the sheet
var freshLabel = GmailApp.getUserLabelByName("00-fresh"); // in the end, add this label
const query = "label:unread" + " label:01-fruit";
var foundThreads = GmailApp.search(query);
var newReceipts = [];
for (var i = 0; i < foundThreads.length; i++) {
+++++++ SOME CODE HERE +++++++
}
}
if(!foundThreads.length) return; // if there are no unread ones, do nothing.
sheet.getRange(SpreadsheetApp.getActiveSheet().getLastRow()+1,2,newReceipts.length,newReceipts[0].length).setValues(newReceipts); //write to sheet
GmailApp.markThreadsRead(foundThreads); // mark "foundThreads" as read
freshLabel.addToThreads(foundThreads); // add label "00-fresh" to "foundThreads"
GmailApp.refreshThreads(foundThreads); // refresh "foundThreads" for changes to show
}
我可以成功搜索单个标签,例如: const query = "label:unread" + " label:01-fruit";
还。
虽然我GmailApp.refreshThreads(foundThreads);
的Execution
永远不会完成。
相反,它显示Status Running
如何在查询中同时搜索多个标签(例如
"label:unread" + " label:00-fruit/01-apples/red"
AND)
"label:unread" + " label:02-veggies/01-peppers/red"
还。如何解决该Status Running
问题?
" "
这是一个空格,用作AND
运算符。OR
并{}
可以用作OR
运算符。使用以上运算符,你的目标就可以实现。
当你要使用label:unread
和搜索邮件时label:00-fruit/01-apples/red
,请按以下方式使用搜索查询。
标签:未读标签:00-水果/ 01-苹果/红色
当你要使用label:unread
和label:00-fruit/01-apples/red
或搜索邮件时label:02-veggies/01-peppers/red
,请按以下方式使用搜索查询。
label:unread (label:00-fruit/01-apples/red OR label:02-veggies/01-peppers/red)
或者
label:unread {label:00-fruit/01-apples/red label:02-veggies/01-peppers/red}
再次感谢您,对于您的回复太晚表示抱歉。