英文字母也能“自动格式”
数字办公
徐文凤:在Excel中输入的中文是默认的字体和字号,但输入的英文字母却不是自己想要的格式,比如字母输入就是9号加粗的斜体。
为了让英文字母变成工作需要的格式,每次我都是用格式刷一个单词一个单词地刷,这样不但枯燥无味而且还容易遗漏。请问《电脑报》的专家,Excel可不可以让字母也能自动变为自己想要的格式呢?
办公专家陈邓新:由于单元格没有Keypress事件,所以输入字母的同时是不能实现自动格式的。但我们可以变通一下,让Excel在完成录入后对当前单元格进行逐个字符的检查,如果含有英文字母,则将字母变成指定的格式。
按组合键“Alt+F11”打开VBA编辑器,在当前工作簿的Change事件编写代码(下载地址:http://download.cpcw.com),其中关键代码解释如下:
Private Sub Worksheet_Change(ByVal Target As Range)
Dim strValue As String
Dim i As Integer
循环测试单元格中的字符(循环次数为字符的长度)
For i = 1 To Len(Target)
从单元格中取一个字符
strValue = VBA.Mid(Target, i, 1)
判断它是否为大写或小写的字母
If strValue Like “[A-Z a-z]” Then
With Target.Characters(Start:=i, Length:=1).Font
此处可修改为自己需要的英文格式
.FontStyle = “倾斜” 字体为倾斜
.Size = 12 字号为12磅
.Bold = True 加粗
代码编写完成后返回到当前的工作表中,以后只要用户输入的数据中含有英文字母,按回车后,系统会自动将英文字母设置为用户指定的格式(见图),而中文和数字保持原来的格式不变,这样用户最初想要实现的功能也就达到了。
