在GAS中删除无效的命名范围 [英] Removing invalid named ranges in GAS

查看:45
本文介绍了在GAS中删除无效的命名范围的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在工作表中定义了一些命名范围,以后将其删除.之后,范围保留在侧栏数据->命名范围..."中,范围为"#REF".我想删除它们,因为我不希望它们累积.

I have defined some named ranges in a sheet that I later delete. Afterwards, the ranges remain in the sidebar "Data->Named ranges...", with the range "#REF". I would like to delete them because I don't want them to accumulate.

SpreadsheetApp.GetActiveSpreadsheet.getNamedRanges()中未列出它们.

如何通过编程方式将其删除?

How can I delete them programatically?

另一种解决方案是如何定义在删除工作表时删除的命名范围.如果您在工作表中有一个重复的命名范围,则会发生这种情况-命名范围的名称类似于'Sheet1Copy'!RangeName",但无法定义这样的名称.

An alternative solution would be how to define a named range that is removed when a sheet is deleted. This happens if you have a named range in a sheet that is duplicated - the named range has a name like "'Sheet1Copy'!RangeName", but it's not possible to define a name like this.

推荐答案

使用 removeNamedRange(name)删除命名范围.即使具有#REF的命名范围也可以使用!范围,而不由 SpreadsheetApp.getActiveSpreadsheet().getNamedRanges()返回.

Use removeNamedRange(name) to remove a Named Range. It will work even with Named Ranges that has #REF! as range and are not returned by SpreadsheetApp.getActiveSpreadsheet().getNamedRanges().

为了更轻松地使用#REF来维护电子表格不受命名范围的影响!作为范围,请保留您的命名范围"列表.您可以为此使用辅助电子表格.

In order to make easier to maintain your spreadsheets free of Named Ranges with #REF! as range, keep a list of your Named Ranges. You could use an auxiliary spreadsheet for that.

这篇关于在GAS中删除无效的命名范围的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆