设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 1386|回复: 4
打印 上一主题 下一主题

[Access本身] 如何取得中文字的拼音第一个字母

[复制链接]
跳转到指定楼层
1#
发表于 2006-11-22 20:49:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
例如:天信物流,

如何用程序拿取得"天"字的拼音的第一个字母 "T"

分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏1 分享分享 分享淘帖 订阅订阅
2#
发表于 2006-11-22 21:06:00 | 只看该作者
northwind里有,好象都是if,效率不高,自己改成select case好了。
3#
 楼主| 发表于 2006-11-22 22:39:00 | 只看该作者
northwind?能明白一点吗.我好久没上论坛了
4#
发表于 2006-11-23 00:12:00 | 只看该作者
trynow有这方面的例子,比螺丝文好
5#
发表于 2006-11-23 01:39:00 | 只看该作者
引用人家的:

提取中文字串的拼音首字母
(http://www.excelba.com/)

一个自定义函数,可提取中文字串中每个字符的拼音首字母,忽略字串中的英文字母和标点,阿拉伯数字,空格等。
附件中有使用范例。
已发现的缺点:不能识别多音字,比如 “单”有"shan、dan"两种读音,其只能识别一种;
到底能识别多少中文字,我也不清楚。

Function HYPY(myStr As String) As String
    Dim L As Integer, i As Integer
    Dim GetPY As String, N As String
    On Error Resume Next
   
   myStr = StrConv(myStr, vbNarrow)
    L = Len(myStr)
   
   For i = 1 To L
      If Asc(Mid(myStr, i, 1)) > 0 Or Err.Number = 1004 Then N = ""
      N = Application.WorksheetFunction.VLookup(Mid(myStr, i, 1), _
      [{"吖","A";"八","B";"嚓","C";"咑","D";"鵽","E";"发","F";"猤","G";"铪","H";"夻","J";"咔","K";"垃","L";"嘸","M";"旀","N";"噢","O";"妑","";"七","Q";"囕","R";"仨","S";"他","T";"屲","W";"夕","X";"丫","Y";"帀","Z"}], 2)
      GetPY = GetPY & N
   Next i
   
   HYPY = GetPY
End Function
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-9-21 18:44 , Processed in 0.102701 second(s), 28 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表