ExcelHome技术论坛

 找回密码
 免费注册

QQ登录

只需一步,快速开始

快捷登录

搜索
EH技术汇-专业的职场技能充电站 妙哉!函数段子手趣味讲函数 Excel服务器-会Excel,做管理系统 Excel Home精品图文教程库
HR薪酬管理数字化实战 Excel 2021函数公式学习大典 Excel数据透视表实战秘技 打造核心竞争力的职场宝典
300集Office 2010微视频教程 数据工作者的案头书 免费直播课集锦 ExcelHome出品 - VBA代码宝免费下载
用ChatGPT与VBA一键搞定Excel WPS表格从入门到精通 Excel VBA经典代码实践指南
查看: 48454|回复: 54

[原创] PHONETIC函数文本连接

  [复制链接]

TA的精华主题

TA的得分主题

发表于 2010-5-8 17:20 | 显示全部楼层 |阅读模式
[广告] VBA代码宝 - VBA编程加强工具 · VBA代码随查随用  · 内置多项VBA编程加强工具       ★ 免费下载 ★      ★使用手册
本帖已被收录到知识树中,索引项:PHONETIC
一、PHONETIC 函数帮助文件:               
提取文本字符串中的拼音 (furigana) 字符。该函数只适用于日文版。               
语法               
PHONETIC(reference)               
Reference     为文本字符串或对单个单元格或包含 furigana 文本字符串的单元格区域的引用。               
注解               
如果 reference 为单元格区域,则返回区域左上角单元格中的 furigana 文本字符串。               
如果 reference 为不相邻单元格的区域,将返回错误值 #N/A。

二、意外的作用:
看个例子:
2.JPG
公式=PHONETIC(A12:E14)      
结果:我爱 ExeCL HOME2010                                       
结论:PHONETIC函数能够将除纯数据(数字、日期、时间)、公式结果(包括错误信息)外的所有字符进行连接。                                                                               
连接顺序:按先行后列,从左向右,由上到下的顺序连接。                       

                                                       
三、PHONETIC对单元格或者单元格区域的引用:
1、单元格或相邻单元格区域,直接引用即可,如上述公式中的引用。
2、不相邻单元格区域的引用方法:
3-1.JPG
1)按联合区域引用方法直接引用:                                                       
=PHONETIC(B21:D23 B21:J21)                                    结果:        我爱               
=PHONETIC((B21:D23,G21:H22,J21:K21))                   结果:我爱EXECL HOME网2010       
=PHONETIC((B21:D23,J21:K21,G21:H22))                   结果:我爱EXECL网2010 HOME               
2)用定义名称引用单元格区域                                                                       
定义名称:区域=B21:D23,G21:H22,J21:K21                                               
=PHONETIC(区域)                 结果:我爱EXECL HOME网2010                       
名称定义时也要是联合区域的引用方法,不能是用&的链接或者函数公式的结果。                       
引用不相邻单元格区域时连接的顺序:先每个区域内部按先行后列,从左向右,由上到下的顺序连接后,再按区域引用的先后顺序由左向右依次连接。       
                       
3、支持由其他函数返回的单元格区域作为其reference参数的值:       
3-2.JPG
1)数组公式=PHONETIC(INDEX(A36:E38,,MATCH({"我","爱","你"},A36:E36,)))
结果如下:
3-1-1.JPG                                                                
                                                                               
2)数组公式=PHONETIC(OFFSET(A35,1,0,ROW(1:3),{2,3,5}))
结果如下:
3-1-2.JPG                                                                                                                        
3)公式=PHONETIC(INDIRECT("A36:E38"))或者PHONETIC(INDIRECT("R36C1:R38C5",0))
结果如下:我爱你EXECLHOME2010                                               
数组公式=PHONETIC(INDIRECT("A36:E"&{37;38}))的结果如下:                                       
3-3-1.JPG

四、PHONETIC函数实战练习:                                                       
4.JPG
以上数字都是文本型数字,包括空值               
1、从B61单元格往回数,顺序为B61,A61,B60,A60,。。到B55,A55的从后向前取不重复数字               
结果数据为:        7012893546       
数组公式:=MID(SUM(MID(5^19&PHONETIC(A55:B61),999-SMALL(MATCH(1-ROW(1:10),-MID(5^19&PHONETIC(A55:B61),999-ROW($1:$999),1),),ROW(1:10)),1)/10^ROW(1:10))&0,3,COUNT(FIND(ROW(1:10)-1,PHONETIC(A55:B61))))               
               
2、从B61单元格往回数,顺序为B61,B60…B55,A61,A60。。A55的从后向前取不重复数字               
结果数据为:        7019358264
数组公式:=MID(SUM(MID(5^19&PHONETIC(A55:A61)&PHONETIC(B55:B61),999-SMALL(MATCH(1-ROW(1:10),-MID(5^19&PHONETIC(A55:A61)&PHONETIC(B55:B61),999-ROW(1:999),1),),ROW(1:10)),1)/10^ROW(1:10))&0,3,COUNT(FIND(ROW(1:10)-1,PHONETIC(A55:A61)&PHONETIC(B55:B61))))               
或者=MID(SUM(MID(5^19&PHONETIC((A55:A61,B55:B61)),999-SMALL(MATCH(1-ROW(1:10),-MID(5^19&PHONETIC((A55:A61,B55:B61)),999-ROW(1:999),1),),ROW(1:10)),1)/10^ROW(1:10))&0,3,COUNT(FIND(ROW(1:10)-1,PHONETIC((A55:A61,B55:B61)))))               
3、按A7,。。A1,B7,B6。。B1的顺序从后向前取不重复数字               
结果数据为:        2804739516       
公式你自己写吧

[ 本帖最后由 donghan 于 2010-5-10 13:21 编辑 ]

评分

4

查看全部评分

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-8 17:39 | 显示全部楼层
公司现在不能上传附件,只能发图片了

TA的精华主题

TA的得分主题

发表于 2010-5-8 17:40 | 显示全部楼层
学习,可惜自己到现在还没有找到进入函数殿堂的钥匙,希望参加完培训班后能实现函数扫盲.

点评

透视表高手,也让我们羡慕啊  发表于 2011-10-12 10:33

TA的精华主题

TA的得分主题

发表于 2010-5-10 12:08 | 显示全部楼层
这两天刚看到这个函数,正好学习了。收藏。

TA的精华主题

TA的得分主题

发表于 2010-5-10 13:39 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
真是太感谢了,我也刚学会这个函数不久,也是在home上学到的,自己逐磨着用,楼主这个函数资料真是太好了。

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-11 08:09 | 显示全部楼层

TA的精华主题

TA的得分主题

发表于 2010-5-11 08:27 | 显示全部楼层
这个函数的几个缺点让实用性大打折扣
1.不支持非单元格(数组),要是像vba中的join函数就完美了。
2.只支持文本格式也略显不足,如果周版的竞赛题中没有规定文本数字格式也就无法取巧了。
因而在做题时用到这个函数时发现用&能很好的绕过去,并非像countif等函数虽然也只支持单元格引用,但是是不可替代的。
个人感觉这个函数也类似鸡肋。

TA的精华主题

TA的得分主题

发表于 2010-5-11 08:32 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
比较生僻的函数

TA的精华主题

TA的得分主题

 楼主| 发表于 2010-5-11 08:51 | 显示全部楼层
[广告] Excel易用宝 - 提升Excel的操作效率 · Excel / WPS表格插件       ★免费下载 ★       ★ 使用帮助
目前这个函数的功能只能说是意外的收获,并不是开发者的意图,它的优点在于连接不相邻的且区域大小不一致单元格区域时的应用。

TA的精华主题

TA的得分主题

发表于 2010-5-12 11:57 | 显示全部楼层
嗯,谢谢楼主整理分享。多一个函数放入百宝囊还是不错的,虽然参数类型限制有点那个,呵呵
您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

手机版|关于我们|联系我们|ExcelHome

GMT+8, 2024-3-29 15:52 , Processed in 0.051074 second(s), 9 queries , Gzip On, Redis On.

Powered by Discuz! X3.4

© 1999-2023 Wooffice Inc.

沪公网安备 31011702000001号 沪ICP备11019229号-2

本论坛言论纯属发表者个人意见,任何违反国家相关法律的言论,本站将协助国家相关部门追究发言者责任!     本站特聘法律顾问:李志群律师

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