此功能在 Web 应用程序中非常常见,但我在 Excel 中找不到类似的解决方案。
我手动输入不同出版物的元数据。其中一列是出版商。
我希望此列有一个下拉排序列表,其中已输入所有先前的值。当我输入一些文本时,我将获得包含该文本的所有可用项目,并且我将能够选择一个。
如果我找不到某个条目,我希望轻松地将该发布者添加到列表中,以便其他条目可以使用。
奖励积分(
答案1
我付钱给 Fiverr 的一名程序员来帮我做这件事,这是他的工作代码。
function onEdit(e) {
var range = e.range;
if (e.value.toString().trim() == '')
return
var sheet = SpreadsheetApp.getActiveSheet();
if (range.getNumColumns() == 1 && range.getNumRows() == 1 && range.getColumn() == 2) {
var Avals = sheet.getRange("B2:B").getValues();
var Alast = Avals.filter(String).length;
var list = sheet.getRange("D2:D" + Alast).getValues();
list = [].concat(...list);
if (list.indexOf(e.value) == -1) {
list.push(e.value);
list.sort()
list = list.map(function (item) {
return [item]
})
console.log(list)
sheet.getRange("D2:D" + (list.length + 1)).setValues(list)
}
}
}