关键词不能为空

当前您在: 主页 > 英语 >

利用VBA寻找重复选项

作者:高考题库网
来源:https://www.bjmy2z.cn/gaokao
2021-02-11 21:22
tags:

-

2021年2月11日发(作者:舵角指示器)


一、函数



1


、将公式


=IF(ISERROR (VLOOKUP(B2,B$$1:B1,1,0)),


重复


< /p>


在数据区域后


空白列第二行,光标对准右下角成“


+


”状时将公式拖(或双击)下去,效果如


图:




2


< p>
=COUNTIF(A:A,A1)



大于


1


的重复。






二、


VBA


找出一列或一行中没有的 重新列出来,


用全部的去循环对比需要排除


的。



Sub


测试


()


Dim rng As Range, rngs As Range, k%, a, b


定义数据类型:设置对


range


单元格的引用,和定



K


为整形变量,


a,b


为变体变量。



For Each rng In [a2:a6]



for each


外循环的范围











a =






For Each rngs In [b2:b4]



for each


内循环的范围











b =










If rng = rngs Then














GoTo 100



跳出外循环











End If






Next rngs






k = k + 1






Cells(k + 1,



把没等的内容复制到新的一列中



100:


Next rng


End Sub



找出重复的并列出次数:



Sub


统计


()


y1 = 1



'

< br>开始列为


A


列(在


EXCEL< /p>


中,


A


列的列号为


1




y2 = 4



'


结束列为


D


列(在


EXCEL


中,


D


列的列号为


4




x = 2


n1 = 255 '


辅助列



n2 = y2+2 '


结果显示列,结果显示在源数据列的右侧,中间间隔一列。



For i = y1 To y2


s = Cells(65536, y1).End(xlUp).Row '


各列数据的数量



Range(Cells(1, i), Cells(s, i)).Copy Cells(x, n1) '


把所有数据复制到辅助列中



x = x + s


Next


Cells(1, n1) =


数据



次数



'


使用< /p>



高级筛选



功 能将不重复数据显示在



结果显示列





Columns(n1).AdvancedFilter 2, , Cells(1, n2), 1


s1 = Cells(65536, n2).End(xlUp).Row


'


下面代码用


COUNTIF


函数统计重复次数



For i = 2 To s1


Cells(i, n2 + 1) = f(Columns(n1), Cells(i, n2))


Next


'


消除辅助列内容



Columns(n1) =


End Sub




Sub


按指定次数重复数据


()


Dim Rng, Arr()


Dim i As Integer, j As Integer, k


As Integer


Dim LastRow As Integer, Total As Integer


LastRow = [A65536].End(xlUp).Row



'



A


列最后一行向上找,找到有数据的行为止



Total = (Range(


Rng = Range(


ReDim Arr(1 To Total, 1 To 1)



'


重新定义数组

ARR


,


调整第一维下标从


1


起到


20



,


第二维下标



1


起 到


11




For i = 2 To UBound(Rng, 1)



For j = 1 To Rng(i, 2)



k = k + 1



Arr(k, 1) = Rng(i, 1)



Next


Next


Range(


End Sub




1.



Sub test()


2.





Dim ar


3.





Dim d As Object


4.





Dim i As Integer, j As Integer


5.





Set d = CreateObject(


6.





ar = Range(


7.





For j = 1 To 3


8.









For i = 2 To UBound(ar)


9.











If ar(i, j) <>


10.













d(ar(i, j)) =


11.











End If


12.









Next


13.





Next


14.





Range(


15.





Range(


16.





Range(


17.



End Sub



-


-


-


-


-


-


-


-



本文更新与2021-02-11 21:22,由作者提供,不代表本网站立场,转载请注明出处:https://www.bjmy2z.cn/gaokao/639014.html

利用VBA寻找重复选项的相关文章

  • 爱心与尊严的高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊严高中作文题库

    1.关于爱心和尊严的作文八百字 我们不必怀疑富翁的捐助,毕竟普施爱心,善莫大焉,它是一 种美;我们也不必指责苛求受捐者的冷漠的拒绝,因为人总是有尊 严的,这也是一种美。

    小学作文
  • 爱心与尊重的作文题库

    1.作文关爱与尊重议论文 如果说没有爱就没有教育的话,那么离开了尊重同样也谈不上教育。 因为每一位孩子都渴望得到他人的尊重,尤其是教师的尊重。可是在现实生活中,不时会有

    小学作文
  • 爱心责任100字作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任心的作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文
  • 爱心责任作文题库

    1.有关爱心,坚持,责任的作文题库各三个 一则150字左右 (要事例) “胜不骄,败不馁”这句话我常听外婆说起。 这句名言的意思是说胜利了抄不骄傲,失败了不气馁。我真正体会到它

    小学作文