加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

获取姓名首字母缩写

(2013-02-21 13:24:15)
标签:

it

vba

分类: 技术交流

 

如果要将单位的所有用户导入到某个系统中,并用姓名的首字母作为登录的ID,总不能手工一个一个地在excel中输入吧,看明白了下面一段自定义函数,你就省心多了。

一、定义函数

首先在VBE编辑器中插入一个模块,在“模块1”中自定义一个名为“hztopy()”的函数,代码如下:

Function hztopy(hzpy As String) As String

Dim hzstring As String, pystring As String

Dim hzpysum As Integer, hzi As Integer, hzpyhex As Integer
hzstring = Trim(hzpy)

hzpysum = Len(Trim(hzstring))

pystring = ""

For hzi = 1 To hzpysum

    hzpyhex = "&H" + Hex(Asc(Mid(hzstring, hzi, 1)))

    Select Case hzpyhex

      Case &HB0A1 To &HB0C4: pystring = pystring + "A"

      Case &HB0C5 To &HB2C0: pystring = pystring + "B"

      Case &HB2C1 To &HB4ED: pystring = pystring + "C"

      Case &HB4EE To &HB6E9: pystring = pystring + "D"

      Case &HB6EA To &HB7A1: pystring = pystring + "E"

      Case &HB7A2 To &HB8C0: pystring = pystring + "F"

      Case &HB8C1 To &HB9FD: pystring = pystring + "G"

      Case &HB9FE To &HBBF6: pystring = pystring + "H"

      Case &HBBF7 To &HBFA5: pystring = pystring + "J"

      Case &HBFA6 To &HC0AB: pystring = pystring + "K"

      Case &HC0AC To &HC2E7: pystring = pystring + "L"

      Case &HC2E8 To &HC4C2: pystring = pystring + "M"

      Case &HC4C3 To &HC5B5: pystring = pystring + "N"

      Case &HC5B6 To &HC5BD: pystring = pystring + "O"

      Case &HC5BE To &HC6D9: pystring = pystring + "P"

      Case &HC6DA To &HC8BA: pystring = pystring + "Q"

      Case &HC8BB To &HC8F5: pystring = pystring + "R"

      Case &HC8F6 To &HCBF9: pystring = pystring + "S"

      Case &HCBFA To &HCDD9: pystring = pystring + "T"

      Case &HEDC5: pystring = pystring + "T"

      Case &HCDDA To &HCEF3: pystring = pystring + "W"

      Case &HCEF4 To &HD1B8: pystring = pystring + "X"

      Case &HD1B9 To &HD4D0: pystring = pystring + "Y"

      Case &HD4D1 To &HD7F9: pystring = pystring + "Z"

      Case Else

        pystring = pystring + Mid(hzstring, hzi, 1)

    End Select

Next

hztopy = pystring

End Function

二、生成姓名首字母

如图所示,在A列中输入所有员工的姓名,在B列中就可以得到对应的拼音首字线简称了,对于拼音首字母相同的用户,只需排序后就可手工给他们再添加数字后缀再加以辨识了。

 http://s1/mw690/78d89c48g7bd2223bb490&690


0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有