Google Sheets删除已解决评论脚本及fields参数报错修复方案
解决Google Sheets删除已解决评论脚本的报错问题
问题原因
你遇到的报错是因为Drive API v2的Comments.list方法必须指定fields参数,用来明确要返回的评论字段,原代码未传入该参数导致请求失败。
修正后的脚本
function deleteResolvedComments() { const ssId = SpreadsheetApp.getActiveSpreadsheet().getId(); // 指定fields参数,获取评论的status和commentId字段 const commentsResponse = Drive.Comments.list(ssId, { fields: 'items(status,commentId)' }); const comments = commentsResponse.items || []; // 处理无评论的情况 comments.forEach(comment => { if (comment.status === 'resolved') { Drive.Comments.remove(ssId, comment.commentId); } }); }
额外注意事项
- 启用Drive API:在脚本编辑器中,点击「资源」→「高级Google服务」,找到「Drive API」并启用它。
- 权限验证:首次运行脚本时,需要授权对应的权限,确保脚本能访问和修改文件评论。
- 空评论处理:添加
|| []避免当文件没有评论时,comments为undefined导致的遍历报错。
内容的提问来源于stack exchange,提问作者Julia Goolia
相关产品推荐
相关产品推荐

