1. 1.启动Excel 2003(其它版本请仿照操作),打开相应的工作表;

  2. 2

    2.执行“工具→宏→Visual Basic编辑器”命令(或者直接按“Alt+F11”组合键),进入Visual Basic编辑状态;

  3. 3

    3.执行“插入→模块”命令,插入一个新模块。再双击插入的模块,进入模块代码编辑状态;

  4. 4

    4.将代码输入其中;

    Function pinyin(p As String) As String

    i = Asc(p)

    Select Case i

    Case -20319 To -20284: pinyin = "A"

    Case -20283 To -19776: pinyin = "B"

    Case -19775 To -19219: pinyin = "C"

    Case -19218 To -18711: pinyin = "D"

    Case -18710 To -18527: pinyin = "E"

    Case -18526 To -18240: pinyin = "F"

    Case -18239 To -17923: pinyin = "G"

    Case -17922 To -17418: pinyin = "H"

    Case -17417 To -16475: pinyin = "J"

    Case -16474 To -16213: pinyin = "K"

    Case -16212 To -15641: pinyin = "L"

    Case -15640 To -15166: pinyin = "M"

    Case -15165 To -14923: pinyin = "N"

    Case -14922 To -14915: pinyin = "O"

    Case -14914 To -14631: pinyin = "P"

    Case -14630 To -14150: pinyin = "Q"

    Case -14149 To -14091: pinyin = "R"

    Case -14090 To -13319: pinyin = "S"

    Case -13318 To -12839: pinyin = "T"

    Case -12838 To -12557: pinyin = "W"

    Case -12556 To -11848: pinyin = "X"

    Case -11847 To -11056: pinyin = "Y"

    Case -11055 To -2050: pinyin = "Z"

    Case Else: pinyin = p

    End Select

    End Function

    Function getpy(str)

    For i = 1 To Len(str)

    getpy = getpy & pinyin(Mid(str, i, 1))

    Next i

    End Function

  5. 5

    5.代码输入完成后,关闭Visual Basic编辑窗口,返回Excel编辑状态;

  6. 6

    6.自定义函数就可以用了,如:选中A2单元格,输入公式:=getpy(A2)。

利用Excel表格中的宏,轻松提取首字母的更多相关文章

  1. 使用Excel表格的记录单功能轻松处理工作表中数据的方法

    使用Excel表格的记录单功能轻松处理工作表中数据的方法 记录单是将一条记录分别存储在同一行的几个单元格中,在同一列中分别存储所有记录的相似信息段.使用记录单功能可以轻松地对工作表中的数据进行查看.查 ...

  2. 利用java反射机制实现读取excel表格中的数据

    如果直接把excel表格中的数据导入数据库,首先应该将excel中的数据读取出来. 为了实现代码重用,所以使用了Object,而最终的结果是要获取一个list如List<User>.Lis ...

  3. VBA取得EXCEL表格中的行数和列数

    VBA取得EXCEL表格中的行数和列数 初学EXCEL宏的童鞋,总是很想知道表格中含有数据的行数和列数,尤其是行数和列数不确定的情况下.这样可以避免很多的错误,并且可以提高效率.但每次用到的时候到网上 ...

  4. excel表格中如何将内容粘贴到筛选后的可见单元格[转]

    默认情况下,筛选后excel表格进行复制粘贴,会贴到隐藏的表格. 可以添加两个辅助列来完成操作:1.在筛选前在表格右边添加"辅助1"列,在第二行输入1,按Ctrl+鼠标左键往下拉到 ...

  5. 根据excel表格中的内容更新Sql数据库

    关于[无法创建链接服务器 "(null)" 的 OLE DB 访问接口 SQL Server 2008读取EXCEL数据时,可能会报这个错误:无法创建链接服务器 "(nu ...

  6. C#读取Excel表格中数据并返回datatable

    在软件开发的过程中,经常用到从excel表格中读取数据作为数据源,以下整理了一个有效的读取excel表格的方法. DataTable GetDataTable(string tableName,str ...

  7. C# 如何在Excel表格中插入、编辑和删除批注

    概述 为文档添加必要的批注可以给文档使用者提供重要的提示信息,下面的示例中,将介绍通过C#编程语言来给Excel表格中的指定单元格内容添加批注,此外,对于已有的批注,如果需要修改,我们也可以进行编辑或 ...

  8. excel表格中打开可以显示整个表格但是打印却只能打印一个单元格

    excel表格中打开可以显示整个表格但是打印却只能打印一个单元格 如下图显示 解决办法 2007 版菜单栏上 ----->页面布局----->打印区域----->取消打印.即可正常. ...

  9. 读取Excel表格中数据原型

    写下这篇博客来记录自己的工作,这部分功能是读取Excel表格中的数据,并通过c#中的datagridview控件将读取的数据显示出来.为了方便用户,我设计了一个read按钮,用户点击这个按钮,会弹出打 ...

随机推荐

  1. Unity四元数小问题整理

    1.Unity中,四元数不能保存超过360度的旋转,所以如此大范围的旋转不能直接两个四元数做插值(当你用0度和721度的四元数做插值,它只会转1度,而不会转两圈). 2.要把旋转设置成某个方向,用Lo ...

  2. lower函数

    将大写字母变成小写 >>> a='AAABBBccc' >>> a.lower() 'aaabbbccc'

  3. SuiteScript > RecordType internalID采集步骤与结果

    当你碰到一个有很多sub Fields的id需要map到js文件的时候,是不是想到一个个复制到js文件中?建立成Object,library起来,方便不同的module中共享. 一个复制,很烦,很浪费 ...

  4. Socket之TCP连接_TcpNoDelay

    摘自: http://jerrypeng.me/2013/08/mythical-40ms-delay-and-tcp-nodelay/

  5. rewrite规则中参数多于9个的处理方式 apache nginx

    RewriteRule ^index-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)-([0-9]+)(.*)$ $9&a ...

  6. phpstrom正则替换

  7. Qt设计师学习笔记--Sharping-Changing Dialogs

    1.pushbutton->default属性为true,按回车相当于点击该按钮. 2.选中checkable后,Button变成切换按钮(toggle button),可以有两种状态:按下/弹 ...

  8. ASP.NET MVC bootstrap 3 ie 8兼容问题及错误解决(取消IE禁用IE脚本调试定位js文件错误)

    因要做一个B/S架构的项目,使用MVC框架技术,本人不擅长页面设计美工,只好用bootstrap框架,在chrome内核系列的浏览器和IE 11中显示都没有问题,但是在 IE 8下显示却不正常,表格无 ...

  9. road习题(二)

    答案:[C] 解析:2 8 原则,考虑的是最高峰,所以安装12小时算 ,80%的 PV 也就是访问都是在 早上6点到下午6点这12个小时里,晚上6点到早上6点的PV总量是40000 ,服务器台数为3, ...

  10. Bluetooth Low Energy 嗅探

    Bluetooth Low Energy 嗅探 路人甲 · 2015/10/16 10:52 0x00 前言 如果你打开这篇文章时期望看到一些新的东西,那么很抱歉这篇文章不是你在找的那篇文章.因为严格 ...