ExcelTip.Net留存知识帖 ---【注:附件之前被网盘供应商清空后,现已修复-现已修复-现已修复为本地下载!】
现在位置:首页 > E问E答 > 综合应用 > 如何分开单元格中的多个城市并取最快到达时限?

如何分开单元格中的多个城市并取最快到达时限?

作者:绿色风 分类: 时间:2022-08-18 浏览:151
楼主
lrlxxqxa
Q:如何分开单元格中的多个城市并取最快到达时限?
问题描述:将一个单元格中的多个城市分开放入一列,每行一个,然后根据基价出现的第一个位置,返回该城市的到达时限;


 

A:
第一步:分开城市;两种方法如下

  1. =TRIM(MID(SUBSTITUTE(A$3&" "&A$4&" "&A$5," ",REPT(" ",100)),ROW(A1)*100-99,100))

  1. Sub 提取()
  2. Application.ScreenUpdating = False
  3. For a = [A65536].End(xlUp).Row To 2 Step -1
  4.     b = UBound(Split(Range("A" & a).Value, " "))
  5.         If b > 0 Then
  6.             Cells(a, 1).Offset(1, 0).Resize(b, 1).EntireRow.Insert
  7.             Range(a + 1 & ":" & a + b) = Range(a & ":" & a).Value
  8.             s = Split(Range("A" & a).Value, " ")
  9.             For c = b To 0 Step -1
  10.                 Range("A" & a).Offset(c, 0).Value = s(c)
  11.             Next
  12.         End If
  13. Next
  14. Application.ScreenUpdating = False
  15. End Sub



 

第二步:取得每个城市的最快到达时限:

取数字:数组
  1. =INT(MAX(IF((B$3:AD$5<>"")*ISNUMBER(FIND(A13,A$3:A$5)),COLUMN(A:AC)))/7)


取文字说明:数组
  1. =INDEX(B$1:AD$1,MATCH(1=1,INDIRECT("B"&MAX((1-ISERR(FIND(A13,A$3:A$5)))*ROW($3:$5))&":AD"&MAX((1-ISERR(FIND(A13,A$3:A$5)))*ROW($3:$5)))>0,))

分开城市取时限.rar
2楼
herelazy
谢谢锐版分享!学习啦!
3楼
开心E点
谢谢**分享,学习了

免责声明

有感于原ExcelTip.Net留存知识的价值及部分知识具有的时间限定性因素, 经与ExcelTip.Net站长Apolloh商议并征得其同意, 现将原属ExcelTip.Net的知识帖采集资料于本站点进行展示, 供有需要的人士查询使用,也慰缅曾经的论坛时代。 所示各个帖子的原作者如对版权有异议, 可与本人沟通提出,或于本站点留言,我们会尽快处理。 在此,感谢ExcelTip.Net站长Apolloh的支持,感谢本站点所有人**绿色风(QQ:79664738)**的支持与奉献,特此鸣谢!
------本人网名**KevinChengCW(QQ:1210618015)**原ExcelTip.Net总版主之一

评论列表
sitemap