我有一个值列表,例如 {A、B、C},然后是一个下拉菜单,它取决于我刚刚共享的值列表!所以在下拉菜单中,我可以选择 A、B 或 C! 假设我为我创建的一堆下拉单元格选择了值 C,然后我将值列表中的值 C 更改为类似 K 的值,即我的新值列表变为 {A, B, K}!为什么我选择为 C 的那一堆值不会自动更改为 K!有没有办法自动更新它们,我从下拉列表中选择了相应的 C 值?
答案 0 :(得分:0)
要替换值,您可以使用 TextFinder
:
function changeOptions(target, search, replaceWith) {
target
.createTextFinder(search)
.matchCase(true)
.matchEntireCell(true)
.matchFormulaText(false)
.replaceAllWith(replaceWith)
}
您可以将其与 onEdit(e)
结合使用。首先获取必要的数据:
const { source, range, oldValue, value } = e
如果编辑不在选项页面上或编辑的值为空或已被删除,则停止该功能:
if (!oldValue || !value || range.getSheet().getName() !== OPTIONS_SHEET_NAME)
return
最后进行替换:
const target = source.getRange(VALIDATED_RANGE)
changeOptions(target, oldValue, value)
OPTIONS_SHEET_NAME
是带有选项的工作表的名称。 VALIDATED_RANGE
必须是与工作表完全相同的 A1 范围(例如 Values!A1:A
)。
此外,您可能需要根据需要对其进行修改。