当前位置: 首页 > 图文教程 > 工具软件 > 办公软件 > Excel帮你填写报名信息卡

办公软件
word教程:了解文档中的域的使用
Word教程:巧用域帮助你输入数学公式
Word技巧:快速实现双面打印的四种方法
Word 2007技巧:半角全角自由转换的设置
Word技巧:教你制作漂亮的文本框
Office实用技巧:四把金钥匙让你的工作变轻松
Word技巧:批量删除文档中回车的方法
Word2007技巧:宏命令给所有文档加上统一密码
Word技巧:查看帮助时使用的快捷键
Word技巧:用替换实现中英文混排文档中的空格
Word教程:批量处理文档中字体和格式的小技巧
Word教程:运用页码标识在长文档中快速定位
Word 2007教程:“替换”功能实现在空白表格中写入字符
Word教程:给文档中加入背景音乐的技巧
另类应用Word:教你玩儿桌面美化
Word教程:不用删减文字给文档瘦身
Word教程:轻松制作试卷密封装订线卷头的技巧
word教程:把PPT文字转换成Word文档的四个技巧
Word2007教程:运用表格模板插入表格技巧
Word教程:如何在Word2007中显示书签

办公软件 中的 Excel帮你填写报名信息卡


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-01   浏览: 41 ::
收藏到网摘: n/a

    每一年的中、高考报名工作中,查找考生姓名、联系地址的区位码是一项必不可少的工作。查找这些汉字的区位码,通常都要对照一本小册子——《汉字区位码手册》进行查找,这不仅不方便,而且也容易出错。利用office/9.shtml' target='_blank' class='article'>Excel的宏解决了这一问题。

  1. 建立一Excel工作簿,选择sheel1工作表,将所有的考生姓名录入A列中。

  2. 打开“工具/宏”,输入所要创建的宏名(qw),点击〔创建〕。

  3. 在弹出的模块(代码)框中录入如下代码:

  Sub qw()

  Dim i, j, k, l, rs As Integer

  Dim cc As Long

  Dim str, newstr, hz1, hz2, ss As String

  i = 0

  k = 1

  j = 0

  '输入待查姓名人数

  rs = InputBox("待查询姓名区位码人数?", "请输入")

  str = ""

  hz2 = ""

  ss = ""

  For j = 1 To rs

  l = 0

  str = Cells(j, 1).Value

  '读取A列中第J行单元格内的姓名

  For i = 1 To Len(str)

  newstr = newstr + Mid(str, i, 1)

  If Right(Mid(str, i, 1), 1) = " " Then l = l + 1

  Next i

  '过滤掉姓名中的空格

  If ((l > 0) And (Right(newstr, 1) <> " ")) Then hz1 = MidB(newstr, 1, 2) + Right(newstr, 2)

  If ((l > 0) And (Right(newstr, 1) = " ")) Then hz1 = newstr

  If l = 0 Then hz1 = newstr

  If Len(hz1) < 1 Then End

  '计算汉字所对应的区位码

  For k = 1 To Len(hz1) + 2 Step 2

  ss = MidB(hz1, k, 2)

  cc = Asc(ss)

  If cc < 0 Then

  cc = cc + 65535 + 1

  If cc > 255 Then

  b2 = Right("0" && ((cc And 255) - 160), 2)

  b1 = Right("0" && (Int(cc / 256) - 160), 2)

  End If

  End If

  '用"'"分开每一汉字的区位码

  If cc > 255 Then hz2 = hz2 + b1 + b2 + "'"

  Next k

  '在B列中输出A列中相应姓名的区位码

  Cells(j, 2) = hz2

  newstr = ""

  hz2 = ""

  Next j

  End Sub

  4. 在确认A列中已输入完所要查询的考生姓名后,就可以打开“工具/宏”,选择刚刚创建的宏名(qw)。点击〔执行〕,在弹出的对话框中输入想要查询的人数,点击〔确定〕按钮,所有的姓名都被自动转换了。