Excel交流网
  • 设为首页|收藏本站|手机版
  • Excel-教程-技巧-培训视频

  • 网站首页
  • Excel教程
  • 关于我们
  • 新闻动态
  • Excel资源
  • 招贤纳士

Excel教程

Excel操作
Excel函数
Excel图表
Excel VBA
Excel 行业应用

联系方式

Excel中国 联系方式
电  话:400-855-3990
邮  编:528400
Email:support@zstm.com
网  址:www.excel-cn.com

当前位置:网站首页 > Excel教程 > Excel函数
Excel函数

读取Excel长文字内容中的规格数据

读取Excel长文字内容中的规格数据


Excel技巧

 

Excel技巧

 江苏大侠的方法:函数


取巧思路:可以发现我们要取的是单字节的字符,利用MIDB,FINDB,LENB等能区分双字节和单字节的文本函数来取巧。
Excel技巧 以B8单元格为例,先用MIDB($B8,ROW($1:998),2)来提取两个字节长度的字符;再用LENB(TRIM取得去除空格后的字符长度,可以判断出长度为1的是规格的首末位置。
Excel技巧 获得每种规格的首末位置后,用SMALL(位置数组,{1,3,5…})取出每种规格的起始位置。再用MIDB(B8,起始位置,ROW(1:99))提取一组字符。



当提取到双字节的前面一个字符串时,该字符串后面会有一个空格(可以理解为双字节的一半为空格),再用VLOOKUP("* ",…来匹配。




完整公式=IFNA(VLOOKUP("* ",MIDB($B2&"侠",SMALL(IF(LENB(TRIM(MIDB($B2,ROW($1:998),2)))=1,ROW($2:999)),COLUMN()*2-7),ROW($1:99)),1,),"")









也可以用MMULT来判断规格的起始位置=IFNA(VLOOKUP("* ",MIDB($B2&"侠",SMALL(IF(MMULT(N(MIDB($B2,ROW($1:998)+{0,1},1)=" "),{1;9})=1,ROW($2:999)),COLUMN()-3),ROW($1:99)),1,),"")









规格不重复的公式=IFNA(TRIM(VLOOKUP("* ",MIDB($B18,SEARCHB("?",$B18,FINDB(C18,$B18)+LEN(C18)),ROW(1:104)),1,))," ")




A.1.1.4地面铺贴40mm宽ST-09卡地亚灰石材波打线
40mmST-09









Excel技巧


Excel小子的方法:VBA

Function tiqu(rg As Range, i) 'excel小子

    Dim re, m, mm

    Set re = CreateObject("vbscript.regexp")

    re.Global = True

    re.Pattern = "[\x00-\xff]+"

    Set m = re.Execute(rg.Value)

    If i > m.Count Then

        tiqu = ""

    Else

        tiqu = m(i - 1)

    End If

End Function



点击次数:  更新时间:2016-11-13 22:22:55  【打印此页】  【关闭】
上一条:Excel首字拼音模糊搜索及快捷录入  下一条:Excel复制内容到新的工作表如何保持行高和列宽
本站动态|在线留言|在线反馈|友情链接|会员中心|站内搜索|网站地图|网站管理

中山市天鸣科技发展有限公司 版权所有 1999-2020 粤ICP备10043721号

广东省中山市西苑广场富贵阁 528400

QQ:4008553990 电话:0760-88315075

Excel交流网主要交流Excel教程、Excel技巧、Excel培训、Excel函数公式、Excel图表以及Excel VBA,为网友提供一个最全的Excel交流网站

Excel教程|Excel技巧|Excel培训|Excel函数公式|Excel图表|VBA

Powered by MetInfo 5.3.12 ©2008-2022  www.metinfo.cn