Excel问题,求公式,如图,求高手指点,谢谢!

如有更好的方法,能够区分重复出现次数的数字,也行,需在右侧按顺序排列开。... 如有更好的方法,能够区分重复出现次数的数字,也行,需在右侧按顺序排列开。 展开
 我来答
【名臣】f2
2015-01-15 · TA获得超过1913个赞
知道大有可为答主
回答量:1594
采纳率:0%
帮助的人:1541万
展开全部
Sub MC_TEST()
    Set d = CreateObject("Scripting.Dictionary")
    For i = 1 To [A65536].End(3).Row
        If Cells(i, "ad") = "" Then
            For j = 5 To 29
                If Cells(i, j) <> "" Then
                    d(Cells(i, j).Value) = d(Cells(i, j).Value) + 1
                End If
            Next
            ar = d.keys: br = d.items: d.RemoveAll
            For n = 0 To UBound(ar)
                d(br(n)) = d(br(n)) & "|" & ar(n)
            Next
            For M = 1 To 4
                ss = Split(d(M), "|")
                For X = 1 To UBound(ss)
                    Cells(i, 29 + (M - 1) * 7 + X) = ss(X)
                Next
            Next
        End If
        d.RemoveAll
    Next
End Sub
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友9ff6a1ea
2015-01-15 · 超过206用户采纳过TA的回答
知道小有建树答主
回答量:469
采纳率:100%
帮助的人:205万
展开全部
我在通用Excel里用取数公式可以轻松做到,单机Excel里,你这个函数试试,或者下载通用Excel。

=IF(ISNA(MATCH(D5,INDIRECT("E1:E"&ROW()-1),0)),IF(ISNA(MATCH(D5,INDIRECT("E"&ROW()+1&":E65536"),0)),"","与第 "&(MATCH(D5,INDIRECT("E"&ROW()+1&":E65536"),0)+ROW())&" 行重复"),IF((ROW())=(MATCH(D5,INDIRECT("E1:E"&ROW()-1),0)),"","与第 "&(MATCH(D5,INDIRECT("E1:E"&ROW()-1),0))&" 行重复"))
追问
谢谢您的回答,貌似不行
追答
Excel里很多功能和想法是没有直接实现的办法,需要变通的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
xiaoxi1981
2015-01-15 · TA获得超过1197个赞
知道小有建树答主
回答量:961
采纳率:72%
帮助的人:336万
展开全部
数组公式,适合2007以上的版本。
=IFERROR(OFFSET($A13,0,SMALL(IF(COUNTIF($E13:$AB13,$E13:$AB13)=1,COLUMN($E13:$AB13),""),COLUMN(A1))-1),"")

数组公式,适合所有版本的excel。
=IF(COLUMN(A1)>SUM(--(COUNTIF($E13:$AB13,$E13:$AB13)=1)),"",OFFSET($A13,0,SMALL(IF(COUNTIF($E13:$AB13,$E13:$AB13)=1,COLUMN($E13:$AB13),""),COLUMN(A1))-1))
更多追问追答
追问
您好!谢谢您的回答!但只能显示“出现一次”的数字,可否分四个公式来作呢?即:出现一次的(上面这个就可以)/出现两次的/出现三次的/出现四次的
追答
你把=1,分别改成 =2,=3,=4
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
EXCEL办公实战
2015-01-15 · Excel办公实战函数、技巧、VBA教程
EXCEL办公实战
采纳数:2380 获赞数:23634

向TA提问 私信TA
展开全部
个人建议是去重重复值后,使用countif函数来统计比较简答!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hlhcygs
2015-01-15 · TA获得超过3174个赞
知道大有可为答主
回答量:2987
采纳率:66%
帮助的人:1937万
展开全部
ad13=IFERROR(SMALL(IF((FREQUENCY(IF($E$13:$AB$13="",0,$E$13:$AB$13),IF($E$13:$AB$13="",0,$E$13:$AB$13))=ROUNDUP(COLUMN(A1)/8,0)),TRANSPOSE($E$13:$AC$13),""),MOD(COLUMN(A1),8)),""),按CTRL+SHIFT+ENTER结束公式右拉,下拉。EXCEL2003不可用,如是EXCEL2003的话通知我改一下。
追问
您好,感谢您的回答!您的公式右拉可行,但下拉全部是重复的。麻烦您啦!帮再改一下。
追答
=IFERROR(SMALL(IF((FREQUENCY(IF($E13:$AB13="",0,$E13:$AB13),IF($E13:$AB13="",0,$E13:$AB13))=ROUNDUP(COLUMN(A1)/8,0)),TRANSPOSE($E13:$AC13),""),MOD(COLUMN(A1),8)),""),按CTRL+SHIFT+ENTER结束公式右拉,下拉。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式