第1个回答 2010-07-15
宏当然是最简单了,弄个公式不完全符合要求。。也发表下了。。
f1=A2&B2&C2&D2&E2&A3&B3&C3&D3&E3
g1==SUM(IF(ISERROR(FIND(ROW($1:$10)-1,$F1)),0,IF(ROW($1:$10)=1,10,(ROW($1:$10)-1))*10^(10-ROW($1:$10))))
数组公式
还不完全符合要求。。
11位长的包括0,自己判断下,当然可以合并到数组公式。。
然后去掉所有0
![](https://video.ask-data.xyz/img.php?b=https://iknow-pic.cdn.bcebos.com/8ad4b31c8701a18b6f3e0b3f9e2f07082938feed?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto)
第2个回答 2010-07-15
按目前的11行数据计,数字5,后面紧邻两行之内出现次数最多的数字是8,共出现了五次。
对不。
Sub Macro1()
'
' Macro1 Macro
' 宏由 ynzsvt 录制,时间: 2010-7-15
'
For i = 1 To 9
rowi = Cells(i, 1)
For Each coli In Range(Cells(i + 1, 1), Cells(i + 2, 5))
Cells(rowi + 2, coli + 8) = Cells(rowi + 2, coli + 8) + 1
Next coli
Next i
'
End Sub
用上面的宏找到各数字出现的次数,然后用max函数找出现次数最大的值。
第3个回答 2010-07-15
公式想必比较难,用VBA做了一个如下:
你只用画一个长方形,点右键,选宏,选新增,然后将下面复制到宏里面,关闭.
然后回到Excel 点长方形,弹出的窗口输入要统计的数字和要统计的栏号.即可得到结果.
Sub Click()
Dim T%, Nu$, Col$, Num%, i%, k%, Brr, Arr(9), Rs%, MXnu%
ReDim Brr(10000)
Nu = Application.InputBox("Please input the number and column", , "7A") '输入要统计的数字和要统计的栏号
Num = --Left(Nu, 1)
Col = Right(Nu, 1)
T = Range(Col & 65536).End(xlUp).Row
For i = 1 To T
If Cells(i, Col) = Num And Cells(i, Col) <> "" Then
Brr(k) = Cells(i + 1, Col)
k = k + 1
Brr(k) = Cells(i + 2, Col)
k = k + 1
End If
Next i
ReDim Preserve Brr(k - 1)
For i = 0 To 9
For T = 0 To k - 1
If Brr(T) = i Then Arr(i) = Arr(i) + 1
Next T
If Rs < Arr(i) Then
Rs = Arr(i)
MXnu = i
End If
Next i
MsgBox MXnu
End Sub