强制输入为大写(Microsoft Excel)
如果要开发供其他人使用的工作表,则可能希望他们始终以大写形式输入信息。 Excel提供了一个工作表功能,该功能可让您将信息转换为大写形式,但不适用于人们实际输入的信息。例如,如果有人在单元格B6中输入信息,则不能使用工作表函数将B6中的信息转换为大写。
相反,您必须使用宏为您进行更改。在VBA中进行编程时,只要工作表单元格中发生任何更改,就可以强制Excel运行特定的宏。以下宏可用于将所有工作表输入转换为大写:
Private Sub Worksheet_Change(ByVal Target As Range) With Target If Not .HasFormula Then .Value = UCase(.Value) End If End With End Sub
但是,为了使宏起作用,必须在特定位置输入该宏。
请按照下列步骤放置宏:
。通过按Alt + F11来显示VBA编辑器。
。在编辑器左侧的“项目”窗口中,双击正在使用的工作表的名称。 (您可能需要先打开VBAProject文件夹,然后打开它下面的Microsoft Excel Objects文件夹。)
。在工作表的代码窗口中,粘贴上面的宏。
。关闭VBA编辑器。
现在,输入到工作表任何单元格中的所有内容(公式除外)都将自动转换为大写。如果您不希望所有内容都被转换,而只希望工作表中特定区域中的单元格被转换,则可以稍作修改:
Private Sub Worksheet_Change(ByVal Target As Range) If Not (Application.Intersect(Target, Range("A1:B10")) Is Nothing) Then With Target If Not .HasFormula Then .Value = UCase(.Value) End If End With End If End Sub
在此特定示例中,将仅转换在单元格A1:B10中输入的文本;其他所有内容将保持输入状态。如果需要转换其他范围,请在宏的第二行中指定该范围。
注意:
如果您想知道如何使用此页面(或_ExcelTips_网站上的任何其他页面)中描述的宏,我准备了一个特殊页面,其中包含有用的信息。
链接:/ excelribbon-ExcelTipsMacros [点击此处在新的浏览器标签中打开该特殊页面]。
_ExcelTips_是您进行经济高效的Microsoft Excel培训的来源。
本技巧(2568)适用于Microsoft Excel 97、2000、2002和2003。可以在以下功能区中为Excel的功能区界面(Excel 2007及更高版本)找到本技巧的版本:
链接:/ excelribbon-Forcing_Input_to_Uppercase [将输入强制为大写]。