'输入姓名的主体函数

Sub 姓名输入(aim As Range)

'清除单元格中的空格并将输入的字母转换为小写

On Error

Resume Next

Dim short

As String

short =

Trim(LCase(aim.Value))

'声明动态数组,调用Search过程在姓名对照表中查找信息

Dim

result() As String

Search

short, result

'如果查找到一个结果则直接写入单元格

If

UBound(result) = 1 Then

aim.Value =

result(1)

'如果没有查找到则直接退出程序

ElseIf

UBound(result) = 0 Then

Exit Sub

'如果查找到两个以上的结果则等待用户选择

Else

'循环等待用户输入,直至输入正确

Dim goOn As

Boolean

Do

goOn = GetOne(result,

aim)

Loop Until (goOn =

True)

End

If

End Sub

'在姓名对照表中查找对应信息存储在result()数组中

Sub Search(short As String, result() As

String)

'如果出错则弹出警告框

On Error

GoTo notable

Dim

searchTable As Worksheet

Set

searchTable = Worksheets("姓名对照")

'获取该工作表的总人数

Dim

rowNum As Integer

rowNum =

searchTable.Cells(1, 1).CurrentRegion.Rows.Count

'重新分配可变数组

ReDim

Preserve result(0) As String

'声明循环变量

Dim row,

index As Integer

index =

1

'循环查找工作表的每一行

For row =

1 To rowNum

Dim aim

As String

aim =

searchTable.Cells(row, 1)

'如果内容符合缩写

If aim =

short Then

'重新分配数组长度

ReDim

Preserve result(index) As String

'将结果存入数组的新空间

result(index) = CStr(searchTable.Cells(row, 2))

index = index + 1

End If

Next

row

Exit

Sub

'姓名对照表不存在时的警告消息

notable:

MsgBox

("找不到姓名对照表!")

End Sub

'有一个以上查找结果时让用户选择其一的函数

Function GetOne(result() As String, aim As

Range) As Boolean

'将所有查找结果及其序号拼接为提示字符串

Dim

warning As String

warning =

"请输入数字选择一个姓名" + Chr(10)

Dim index

As Integer

For index

= 1 To UBound(result)

warning = warning +

CStr(index) + ":" + result(index)  + "

"

Next

index

'接受用户输入

Dim

answer As String

answer =

InputBox(warning)

If answer

= "" Then

GetOne =

True

Exit

Function

End

If

'判断其是否为数字,以及大小是否符合范围

answer =

Trim(answer)

GetOne =

False

On Error

GoTo msg

index =

CInt(answer)

If index

>= 1 And index <= UBound(result)

Then

GetOne =

True

End

If

'如果输入有效则在单元格中写入内容。否则重新输入

If GetOne

= True Then

aim.Value =

result(index)

Else

msg:

MsgBox

("输入内容格式错误或超出范围,请重新输入")

End

If

End Function

c语言代码姓名全拼,巧用拼音首字母输入人名(代码)相关推荐

  1. oracle中文转全拼音,Oracle 将汉字转为全拼或返回拼音首字母SQL(二)

    创建函数: CREATE OR REPLACE FUNCTION F_INITIALS_FUZZY_QUERY(P_NAME IN VARCHAR2) RETURN VARCHAR2 AS V_COM ...

  2. java中获取中文拼音(全拼)和中文首字母

    目录 一.引入依赖 二.代码 三.解释 1.创建格式化对象HanyuPinyinOutputFormat 2.设置输出结果的大小写格式 3.设置声调格式 4.进行汉字转拼音操作 四.作用 一.引入依赖 ...

  3. mysql全拼_mysql数据库汉字首字母简拼全拼

    汉字提取首字母 fristPinyin : 此函数是将一个中文字符串的第一个汉字转成拼音字母 (例如:"李"->l),包括特殊字符处理,可以进行动态添加 CREATE FUN ...

  4. mysql简拼查询_MySQL拼音首字母查询_MySQL

    bitsCN.com 最近一个项目中有个模块需要实现拼音首字母查询功能,网上查了一下资料,自己重新修改整理了一下,使其满足项目的要求. 实现过程如下: 1.创建一个获取中英文大写首字母函数: DROP ...

  5. 已知一个掺杂了多个数字字符的中文名拼音,去掉所有数字字符之后,形式为“名”+空格+“姓”;并且名和姓的首字母大写,其他小写,要求输出姓名全拼,且全为小写。(后附详细样例说明)

    已知一个掺杂了多个数字字符的中文名拼音,去掉所有数字字符之后,形式为"名"+空格+"姓":并且名和姓的首字母大写,其他小写,要求输出姓名全拼,且全为小写.(后附 ...

  6. C# 获取汉字的拼音首字母和全拼(含源码)

    C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是依照汉字在Unicode编码表中的排序来确定拼音的首字母.碰到多音字时就以常用的为准(第一种方法中可以自行更改,方法为手 ...

  7. (转)C# 获取汉字的拼音首字母和全拼(含源码)[A]

    https://blog.csdn.net/younghaiqing/article/details/62417269 C# 获取汉字的拼音首字母 一种是把所有中文字符集合起来组成一个对照表:另一种是 ...

  8. js汉语转拼音(全拼、首字母、拼音首字母)

    新建js文件first_alphabet.js 1 // JavaScript Document 2 // 汉字拼音首字母列表 本列表包含了20902个汉字,用于配合 ToChineseSpell 3 ...

  9. java将汉字转成拼音首字母大写字母_java 根据汉字生成拼音全拼或拼音首字母的示例...

    1.情景展示 java 根据中文生成对应的拼音 2.准备工作 所需jar包:pinyin4j-2.5.0.jar 3.解决方案 导包 import net.sourceforge.pinyin4j.P ...

  10. oracle汉字转拼音(获得全拼/拼音首字母/拼音截取等)

    oracle汉字转拼音(获得全拼/拼音首字母/拼音截取等) oracle 字符集 GBK 没有问题 , UTF -8 需要修改一下 1.获得全拼 SELECT GETHZPY.GETHZFULLPY( ...

最新文章

  1. Ardino基础教程 21_最简单最快控制LCD1602
  2. [导入]Ms Ajax Lib- Object 类型扩展
  3. 站长如何拥抱腾讯云大生态
  4. ad18敷铜为什么打的孔里面也有_PCB覆铜后放置大量过孔有什么作用?具体怎么放置?...
  5. python默认参数不能定义为可变对象类型
  6. 中文语音识别系统搭建流程笔记
  7. 微信第三方开放平台研发实战
  8. 【Java】使用ScriptEngine动态执行代码(附Java几种动态执行代码比较)
  9. CSDN 个人博客域名设置
  10. Win10如何高效压缩卷,亲测有效
  11. 块元素div转变为行内块元素之后如何消除之间间隙
  12. UG/NX二次开发Siemens官方NXOPEN实例解析—1.6 BlockStyler/SelectionExample
  13. 计算机原理理解编程语言_计算机如何理解我们对编程语言及其工作原理的高级概述...
  14. Android之ubuntu源码开发环境搭建笔记
  15. 2021年中国互联网广告市场年度分析
  16. 驾考记录之科目三(2021-06-16)(上海旗忠考场)
  17. 深入Android源码系列(二) HOOK技术大作战
  18. LeetCode每日一题——Day21
  19. Vscode几个有趣的插件
  20. vc.net 连接数据库操作实例 高手勿看(太基础)

热门文章

  1. 数据以及空值数据处理方法
  2. pngimg 可以商用吗_全球6大免费商用素材网!设计师必备!
  3. 游戏应用快速审核上架
  4. D3D11 自由视角相机
  5. 如何用3dmax画OpenGL的5大坐标系
  6. ssh无密码登录原理和配置方法
  7. multus-cni之源码解析
  8. android中生成 PDF,Android PDF生成
  9. oeasy教您玩转vim - 005 - # 程序本质
  10. 部分商誉确认法和全部商誉确认法