Jacob希望格式化一个单元格,以便当他输入一个值时,如果该值大于预定阈值,它将显示该阈值。例如,如果单元格的格式设置为50是他可以输入的最大数字,则如果他输入60,则该单元格将显示50。

如果您要做的只是修改单元格中显示的内容,则可以按以下方式创建简单的自定义格式:

。选择要影响的单元格。 (在该单元格中,您不希望显示的阈值大。)

。显示功能区的“主页”选项卡。

。单击“数字”组右下角的小图标。

Excel将显示“设置单元格格式”对话框。

。确保已选择“号码”标签。 (请参见图1。)

。在对话框左侧的“类别”列表中,选择“自定义”。

。在对话框左侧的“类型”框中,输入以下格式:[红色] [> 50]“ 50”; 0。单击确定。

这种方法不会修改存储在单元格中的内容。它只是更改了单元格中显示的内容-它显示的最大值是50,并且将以红色显示。阈值仍然存储在单元格中的事实可能会导致您的工作表出现其他问题,这可能比其价值更大。

雅各的情况通常通过使用Excel的数据验证功能来处理。您只需设置一条规则,指示如果单元格中的值超出所需范围,该怎么做:

。选择要在其中设置阈值的单元格。

。显示功能区的“数据”选项卡。

。在“数据工具”组中,单击“数据验证”工具。 (如果使用的是Excel 2007或Excel 2010,则数据验证工具位于“数据验证”组中。)Excel显示“数据验证”对话框。 (请参见图2。)

。使用“允许”下拉列表,选择“整数”。 Excel更改对话框中可用的控件。

。使用数据下拉列表,选择小于或等于。

。在“最大值”框中输入值50。 。如果需要,在对话框的其他选项卡上,输入输入消息和错误消息。

。单击确定。

这样可以确保某人只能在单元格中输入0到50之间的一个值。如果他们尝试输入此范围之外的值,那么将显示您指定的任何错误消息(步骤7),并且用户可以输入其他值。

但是,此方法可能无法满足Jacob的期望,因为他只是想将单元格中的值更改为阈值。在这种情况下,您将需要使用宏。这是可以使用的简单方法:

该宏实现为事件处理程序。要使用它,请右键单击工作表的选项卡,然后从出现的上下文菜单中选择“代码”。然后可以将上面的宏粘贴到该代码窗口中。您还需要修改您要宏注意的单元格。如所写,只有在您尝试将值输入到单元格B7中时,该命令才会生效。

Private Sub Worksheet_Change(ByVal Target As Range)

If Not Intersect(Target, Range("B7")) Is Nothing Then         If Target > 50 Then Target = 50     End If End Sub

注意:

如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。

链接:/ excelribbon-ExcelTipsMacros [点击此处在新的浏览器标签中打开该特殊页面]。

_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。

本技巧(13638)适用于Microsoft Excel 2007、2010、2013、2016、2019和Office 365中的Excel。