EXCEL公式求助,一列数字中包含0-9,要求取后面7个
答案:3 悬赏:10 手机版
解决时间 2021-11-13 01:44
- 提问者网友:杀生予夺
- 2021-11-12 19:28
EXCEL公式求助,一列数字中包含0-9,要求取后面7个
最佳答案
- 五星知识达人网友:猎心人
- 2021-11-12 20:00
1、源数据先转换成文本格式:
选定——菜单栏——数据——数据工具——分列——下一步——下一步——列数据格式:文本(点选)——确完成。
2、F17输入
=RIGHt(MId(SUM(MId(PHONETIC(OFFSET(D2,,,COUNTA(D:D),))&5^19,SMALL(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(D2,,,COUNTA(D:D),))&5^19),ROW($1:$10)),1)/10^ROW($1:$10)),3,COUNT(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(D2,,,COUNTA(D:D),))))),7)
数组公式,输入后先不要回车,按Ctrl+Shift+Enter结束计算。
你要后8位的,把公式最后面的参数“7”改为“8”即可。
追问按照你这个公式结果不对啊,应该是0152439你这个公式是7924015取得结果不对。追答是你错了!你要求取最后出现的7个数字,“3”是第一个数据(D2)哦。追问对,我说错了,我要的是从D17
往上取7个不重复的数字,请问公式怎么写?追答公式往往都是从上到下、从左到右。你要从下往上,公式会很累赘。
用辅助列吧:
E2输入
=INDEX(D:D,COUNTA(D:D)-ROW(1:1)+2)
回车并向下填充,再选E列用选择性粘贴转换成数值。
上面的数组公式公式改为:
=LEFt(MId(SUM(MId(PHONETIC(OFFSET(E2,,,COUNTA(E:E),))&5^19,SMALL(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(E2,,,COUNTA(E:E),))&5^19),ROW($1:$10)),1)/10^ROW($1:$10)),3,COUNT(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(E2,,,COUNTA(E:E),))))),7)
选定——菜单栏——数据——数据工具——分列——下一步——下一步——列数据格式:文本(点选)——确完成。
2、F17输入
=RIGHt(MId(SUM(MId(PHONETIC(OFFSET(D2,,,COUNTA(D:D),))&5^19,SMALL(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(D2,,,COUNTA(D:D),))&5^19),ROW($1:$10)),1)/10^ROW($1:$10)),3,COUNT(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(D2,,,COUNTA(D:D),))))),7)
数组公式,输入后先不要回车,按Ctrl+Shift+Enter结束计算。
你要后8位的,把公式最后面的参数“7”改为“8”即可。
追问按照你这个公式结果不对啊,应该是0152439你这个公式是7924015取得结果不对。追答是你错了!你要求取最后出现的7个数字,“3”是第一个数据(D2)哦。追问对,我说错了,我要的是从D17
往上取7个不重复的数字,请问公式怎么写?追答公式往往都是从上到下、从左到右。你要从下往上,公式会很累赘。
用辅助列吧:
E2输入
=INDEX(D:D,COUNTA(D:D)-ROW(1:1)+2)
回车并向下填充,再选E列用选择性粘贴转换成数值。
上面的数组公式公式改为:
=LEFt(MId(SUM(MId(PHONETIC(OFFSET(E2,,,COUNTA(E:E),))&5^19,SMALL(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(E2,,,COUNTA(E:E),))&5^19),ROW($1:$10)),1)/10^ROW($1:$10)),3,COUNT(FIND(ROW($1:$10)-1,PHONETIC(OFFSET(E2,,,COUNTA(E:E),))))),7)
全部回答
- 1楼网友:洒脱疯子
- 2021-11-12 21:47
建立一个Function进行删除重复数据
Function RemoveDuplicateCell(text As String)
Dim j As String
For i = 1 To Len(text)
j = Mid(text, i, 1)
If InStr(RemoveDuplicateCell, j) = 0 Then RemoveDuplicateCell = RemoveDuplicateCell & j
Next
End Function然后掉用这个Function 在F17上面输入公式如下
=LEFt(RemoveDuplicateCell(CONCATENATE(D17,D16,D15,D14,D13,D12,D11,D10,D9,D8,D7,D6,D5,D4,D3,D2)),7)
上面的‘7’是可以更改,根据你想要显示多少位。然后CONCATENATE你也可以选择是从上到下还是从下到上。
- 2楼网友:轻雾山林
- 2021-11-12 20:45
增加以辅助列,比如E列
E2输入
=INDEX(D:D,MAX(IF(COUNTIF(E$1:E1,$D$2:$D$17)=0,ROW($2:$17),0)))&""
数组公式,先按住CTRL+SHIFT,最后回车
公式下拉
为清晰起见,E列可隐藏
F17输入
取倒数7位
=CONCATENATE(E2,E3,E4,E5,E6,E7,E8)
取倒数8位
=CONCATENATE(E2,E3,E4,E5,E6,E7,E8,E9)
取倒数9位
=CONCATENATE(E2,E3,E4,E5,E6,E7,E8,E9,E10)
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯