如何去掉(或显示)列中重复的数据?
如下,假设我有四列,10行的数据
1 2 3 4
语文芬 数学生 地理光 物理耀
地理光 数学利 政治肖 英语卿
数学生 生物发 语文鹏 物理国
政治玉 物理耀 体育雄 历史辉
数学生 生物强 历史辉 体育雄
地理胜 数学鹏 物理国 政治玉
物理民 数学利 音乐华 地理胜
数学利 物理民 生物生 音乐华
语文贤 数学苹 美术勇 政治肖
那么用什么方法(用VBA),可以去掉(或显示)每列中重复的数据?如第一列中的“数学生”,二列中的“数学利” mode 好象对字符串无能为力?
问题点数:20、回复次数:5Top
1 楼wl3721()回复于 2004-09-06 12:51:20 得分 15
写代码当然可以,不过要先对列进行排序在处理好一些。
下面是一个合并重复单元格的例子,改改就行了。
Sub sMergeArea(SelRange As String)
Dim b, e, i, k, m As Integer
For k = Range(SelRange).Column To Range(SelRange).Columns.Count + Range(SelRange).Column
i = Range(SelRange).Row
m = Cells(i, k)
b = i
e = b
Do While e < Range(SelRange).Rows.Count + Range(SelRange).Row
If Cells(i + 1, k) = m Then
Cells(i + 1, k) = ""
Else
m = Cells(i + 1, k)
Range(Cells(b, k), Cells(e, k)).Merge (False)
b = i + 1
End If
i = i + 1
e = i
Loop
Next
End SubTop
2 楼biku(向一颗红星进军!)回复于 2004-09-07 11:17:10 得分 0
谢谢,我试试看。Top
3 楼biku(向一颗红星进军!)回复于 2004-09-07 16:46:31 得分 0
有什么方法可以得到查找的结果?比如查找“数学生”结果有2个,如何得到这个“2”呢?Top
4 楼arden1019(CSCUM)回复于 2004-09-07 16:59:54 得分 5
你在判断是否相同时,1\记录当时单元格的值
2\设置计数变量
这可能需要一个二维数组来支持.
如果相同计数变量加1
Top
5 楼biku(向一颗红星进军!)回复于 2004-09-09 17:04:30 得分 0
我用countif就解决了。Top




