如何在Excel中突出显示重复项:完整的分步指南
下拉列表,又称为下拉菜单,有时被称为下拉菜单,或简称为下拉列表,用于限制用户在单元格中输入内容以控制数据输入。 有时候那个小箭头会妨碍操作。 也许您继承了一个充满数据验证规则的Excel工作簿,而这些规则您不再需要,或者某一列现在用作自由文本而不是固定选项。 不管是什么原因,学习如何在Excel中删除下拉列表只需几次点击,一旦你知道在Microsoft Excel中哪里可以找到。
删除下拉列表的最快方法是选择该单元格,打开数据选项卡,然后点击数据验证以打开数据验证对话框。 在设置选项卡中,点击清除所有按钮,然后按下确定,箭头就会立刻消失。 已经在单元格中的文本会保持不变,因此您可以删除规则而不会丢失数据。 同样的数据验证窗口是您创建列表时选择数据验证选项的地方,这就是为什么删除一个会感觉很熟悉。
如果多个单元格中出现相同的下拉列表,请在打开对话框之前选择所有这些单元格。 点击第一个单元格,按住Ctrl,然后点击每个其他单元格,或者在连续范围内拖动以一次性抓住它们。 要覆盖多列或多行,请拖动整个块,或点击一个列标题以选择整个列。 然后清除所有按钮会一次性从所选范围内的所有单元格中删除规则,这比逐个修复特定单元格要快得多。 驱动这些菜单的相同逻辑就是最初让您在Excel中添加下拉列表的原因,因此这两个任务在功能区中的位置相同。

对于您也想要一起清除值、格式和规则的情况,Excel在"主页"选项卡上提供了一个单独的快捷方式。 下面覆盖了这两个路径,还有一种键盘方法,一种查找隐藏验证设置的方法,以及一种用于大文件的宏。 如果您经常在大范围内清除单元格内容,这些技术中的一些会让人感到熟悉。
方法1:数据选项卡和清除所有(最快路径)
这是最干净的选项,因为它只删除验证规则,留下您键入的值完好无损。
- 选择包含下拉列表的单元格或范围。
-
转到功能区上的数据选项卡。
-
在数据工具组中点击数据验证。
-
在设置选项卡上,点击清除所有。
- 点击确定。
确认后,下拉箭头消失。 以这种方式清除数据验证设置只会影响活动工作表,因此其他工作表保留其规则。 如果您选择了多个包含不同类型数据验证规则的单元格,Excel可能会询问您是否要对所有单元格应用更改。 选择是以清除选择中的每个规则。

方法2:主页选项卡清除菜单(一次性删除所有内容)
当您想要完全清除单元格时使用此方法,这意味着值、格式和下拉规则一起消失。
- 选择单元格或范围。
-
在主页选项卡上,在最右边找到编辑组。
-
点击清除按钮(橡皮擦图标)。
- 选择清除所有。
点击"清除"并选择"清除所有"后,Excel将选定的单元格重置为空白,因此仅当您确实想要重新开始时才使用此方法。 在单元格上右键点击不会提供删除验证选项,因此应通过功能区使用该路径。 如果您想保留文本而仅删除规则,方法1是更安全的选择。

方法3:数据验证对话框的键盘快捷方式
任何整天在电子表格中工作的人都可以完全跳过鼠标。 旧的快捷键序列仍然可以在当前版本的Excel中打开数据验证对话框:
- 选择单元格或范围。
-
依次按Alt、A、V、V(不是同时按)。
- 对话框打开时,点击清除所有,然后按回车。
这是因为Alt键激活功能区快捷方式,而A引导到数据选项卡。 第一次使用感觉很尴尬,但很快就会变成肌肉记忆。

方法4:使用"定位条件"查找隐藏的下拉列表
有时工作簿中有很多分散的下拉列表,没人记得在哪里。 Excel可以为您定位包含验证规则的每个单元格。
-
按Ctrl + G打开"定位"对话框,然后点击特殊。
-
选择数据验证,然后选择全部以突出显示每个验证过的单元格,或选择相同以匹配共享活动单元格规则的单元格。
- 点击 确定。 Excel选择所有匹配的单元格。
- 在选中这些单元格的情况下,打开数据 > 数据验证 > 清除所有并确认。
这与方法1完美搭配,是在分散的单元格上擦除验证的可靠方法。
方法5:从整个工作表中删除下拉列表
要一次性清除整张工作表中的验证:
-
点击行和列标题汇合处的全选三角形,或按Ctrl + A。
-
转到数据 > 数据验证。
- 点击清除所有,如果提示有关多种规则类型,选择是,然后按确定。
此操作后,Excel工作表上的每个下拉列表都消失了,因此在您确定的工作表上使用此方法。
方法6:使用宏(VBA)删除下拉列表
对于包含数百个工作表或规则的工作簿,一个简短的宏可以省很多点击。 按Alt + F11打开编辑器,插入一个模块,然后粘贴以下文本片段之一。
要从特定范围中清除验证:
Sub RemoveDropDownFromRange()
Range("B2:B100").Validation.Delete
End Sub
Sub RemoveDropDownFromRange()
Range("B2:B100").Validation.Delete
End Sub
Sub RemoveDropDownFromRange()
Range("B2:B100").Validation.Delete()
End Sub
要从整个活动工作表中清除验证:
Sub RemoveAllDropDowns()
Cells.Validation.Delete
End Sub
Sub RemoveAllDropDowns()
Cells.Validation.Delete
End Sub
Sub RemoveAllDropDowns()
Cells.Validation.Delete()
End Sub
使用F5运行宏或将其分配给一个按钮。 Validation.Delete行删除规则,同时保留单元格值,与数据选项卡上的清除所有的结果相同。
常见问题及故障排除
即使在上述步骤完成后,一些常见情况也可能让您困惑。 以下是从电子表格中删除验证时最常出现的情况。
清除后下拉箭头仍然出现。您可能从显示箭头的不同单元格中清除了规则。 直接点击带有可见箭头的单元格并再次运行方法1。 如果多个单元格看起来相同,请使用"定位查找"工具(方法4)确保您抓住所有。
清除所有被灰显或无效。这通常意味着工作表受保护。 转到审阅选项卡,点击取消保护工作表,如果设置了密码,请输入,然后删除下拉项。 如果您仍然需要锁定,请在保护工作表后重新保护。
粘贴数据后下拉项会回来。复制一个单元格会带上它的验证规则及其值。 当您粘贴到一个已清理的单元格上时,规则可能会返回。 为避免这种情况,使用粘贴选项并选择值,以便只有内容传输过来,而验证留在原地。
单元格属于Excel表。表格列可以自动对每行应用下拉,甚至包括新行。 清除一个单元格不会阻止该列重新应用规则。 选择表中的整列并运行清除所有,或首先将表转换回普通范围。
您想保留列表但更改选项。此处删除不是正确的方法。 重新打开数据验证,停留在设置选项卡,编辑来源框而不是点击"清除所有"。 这会交换项目而不删除下拉列表。
列表来源是一个命名范围。当下拉列表以命名范围为基础提供选项时,规则指向的是名称管理器中定义的名称。 清除验证删除下拉列表,虽然命名范围本身仍在名称管理器中,直到您在公式 > 名称管理器下删除它。
合并单元格行为异常。首先取消合并任何合并的单元格,然后删除验证。 隐藏部分合并处留下的规则在您认为已清除后仍可能使箭头可见。
条件格式和数据透视表保持不变。删除下拉不是影响条件格式的事情,因此任何选定值上的颜色规则依然存在。 如果单元格接收到数据透视表,刷新数据透视表以便反映新数据。
列表使用了公式来源。当选项来自源框中的公式时,如OFFSET或INDIRECT函数,删除验证也会停止这些函数为单元格提供数据。 如果您想以后在没有函数的情况下保留列表,请添加一个带有普通选项的新列。
您希望删除项目而不是整个列表。要删除下拉列表而不完全丢失它,重新打开数据验证,编辑来源框以删除项目,而不是使用清除所有直接删除下拉规则。
您使用的是Mac。在Excel for Mac中,流程非常接近。 打开数据选项卡,选择数据验证,并以相同方式清除特定工作表上的规则。
对于开发人员:以编程方式删除下拉列表
手动清理对于少数文件工作良好,但当应用程序每月生成数千个电子表格时,它就无法支持,可能例如用于客户导入表单或计划审计。 在.NET中,您可以使用IronXL,一个C# Excel库,通过代码删除验证规则,该库读取和编辑 XLSX和XLS文件而无需在机器上安装Microsoft Office或Interop。
每个工作表上的DataValidations集合包含所有的验证规则,包括下拉列表,并支持直接删除它们:
using IronXL;
// Load the workbook that contains the drop-down list
WorkBook workbook = WorkBook.Load("inventory.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Remove the data validation (drop-down list) applied to a range
worksheet.DataValidations.RemoveDataValidation("B2:B100");
// Save the cleaned file
workbook.SaveAs("inventory-cleaned.xlsx");
using IronXL;
// Load the workbook that contains the drop-down list
WorkBook workbook = WorkBook.Load("inventory.xlsx");
WorkSheet worksheet = workbook.DefaultWorkSheet;
// Remove the data validation (drop-down list) applied to a range
worksheet.DataValidations.RemoveDataValidation("B2:B100");
// Save the cleaned file
workbook.SaveAs("inventory-cleaned.xlsx");
Imports IronXL
' Load the workbook that contains the drop-down list
Dim workbook As WorkBook = WorkBook.Load("inventory.xlsx")
Dim worksheet As WorkSheet = workbook.DefaultWorkSheet
' Remove the data validation (drop-down list) applied to a range
worksheet.DataValidations.RemoveDataValidation("B2:B100")
' Save the cleaned file
workbook.SaveAs("inventory-cleaned.xlsx")
加载文件、定位持有规则的范围并保存结果可以得到一个值保留而下拉消失的干净电子表格。 上述示例作为一个简短的过程运行,相同的集合还允许您读取现有规则或创建新规则,因此单个程序可以标准化整个批文件的验证。 请注意,值保持完整,与手动清除所有结果相同。
要探索IronXL如何处理下拉列表、数据验证以及您在C#和VB.NET中的电子表格自动化的其余部分,访问IronXL文档页。




