首页

> 期刊发表知识库

首页 期刊发表知识库 问题

vba查重复,保留首次出现

发布时间:

vba查重复,保留首次出现

请把你的情况说明的再具体点

不太明白,发个文件来理解一下

你带行列号截图上来看看。另结果不应在同一单元格内,会入嵌套死循环的。

图中的Day4是需要删除的?

vba查重复输出到对话框

Private Sub CommandButton1_Click()    TextBText = ""    For r = 1 To Range("a65536")End(xlUp)Row        If Cells(r, 1)Value = TextBText And Cells(r, 2)Value = TextBText Then            TextBText = Cells(r, 3)Value            Exit For        End If    NextEnd Sub

考虑到用窗体和控件在这里不方便,就用INPUTBOX来代替了 Sub xm() Dim xm$, ys1%, ys%, rn As Range xm = InputBox("请输入要查询的姓名,并输入显示背景颜色代码,例如:张三,1" & vbCr & "红色 绿色 蓝色 黄色 紫色 青色 桔色") xm = Replace(xm, ",", ",") If IsNumeric(Split(xm, ",")(1)) Then If InStr(xm, ",") Then ys1 = Split(xm, ",")(1) Select Case ys1 Case 1 ys = 3 Case 2 ys = 4 Case 3 ys = 5 Case 4 ys = 6 Case 5 ys = 7 Case 6 ys = 8 Case Else ys = 46 End Select End If For Each rn In SUsedRange If Value = Split(xm, ",")(0) Then IColorIndex = ys Next Else MsgBox "输入有误,请重新输入" End IfEnd Sub

excel查重复出现次数

是这样么??上图的2个公式都可以,不过D列的公式简单点,C列的需要一个个改

用COUNTIF函数可以,附上使用方法函数名称:COUNTIF   主要功能:统计某个单元格区域中符合指定条件的单元格数目。   使用格式:COUNTIF(Range,Criteria)   参数说明:Range代表要统计的单元格区域;Criteria表示指定的条件表达式。     应用举例:在C17单元格中输入公式:=COUNTIF(B1:B13,">=80"),确认后,即可统计出B1至B13单元格区域中,数值大于等于80的单元格数目。

1:确定要找的重复值和需要查找的范围;2:在单元格输入COUNTIF函数;COUNTIF(查找的范围,要找的重复值);3:要找的重复值可以是单元格,公式,数值,文本或字符;当条件为字符时,还可以使用通配符,如=countif(A1:A10,"刘??"),查找的范围可以是行,列,选定范围;

通过公式:COUNTIF($A$2:A2,A2)就可以统计出A2,在A列中出现第几次。其中:$A$2:A2为指定范围,$符号表示锁定,通过下拉的过程,该值不会随列数变化而变化,A2为特定内容。这样就可以轻松知道A2在A列中第几次出现。如果每天都往该工作表中汇总新数据,你想删除之前的重复内容,这时候你就可以筛选,重复出现次数最小的进行删除。

vba查重复数据

考虑到用窗体和控件在这里不方便,就用INPUTBOX来代替了 Sub xm() Dim xm$, ys1%, ys%, rn As Range xm = InputBox("请输入要查询的姓名,并输入显示背景颜色代码,例如:张三,1" & vbCr & "红色 绿色 蓝色 黄色 紫色 青色 桔色") xm = Replace(xm, ",", ",") If IsNumeric(Split(xm, ",")(1)) Then If InStr(xm, ",") Then ys1 = Split(xm, ",")(1) Select Case ys1 Case 1 ys = 3 Case 2 ys = 4 Case 3 ys = 5 Case 4 ys = 6 Case 5 ys = 7 Case 6 ys = 8 Case Else ys = 46 End Select End If For Each rn In SUsedRange If Value = Split(xm, ",")(0) Then IColorIndex = ys Next Else MsgBox "输入有误,请重新输入" End IfEnd Sub

你这样只能遍历整行才行,但是有个问题,比如:第1行为:1 2 3 4 1 2 3 4 ,像这样的数据,1234都重复了一遍,那整行都是蓝色的,是否重复数据只有一个?如果多个重复数据,那做了和没做没啥区别,只是知道它重复了。代码如下:Sub a() '被重复和重复的都筛选Dim i As LongDim j As LongDim k As LongFor i = 3 To Range("A3")End(xlDown)Row For j = 1 To Cells(i, 1)End(xlToRight)Column For k = 1 To Cells(i, 1)End(xlToRight)Column If j = k Then GoTo l1 End If If Cells(i, j) = Cells(i, k) Then Cells(i, j)IColorIndex = 5 End Ifl1: Next k Next jNext iEnd SubSub b() '只筛选被重复的,不筛选重复的Dim i As LongDim j As LongDim k As LongFor i = 3 To Range("A3")End(xlDown)Row For j = 1 To Cells(i, 1)End(xlToRight)Column For k = j + 1 To Cells(i, 1)End(xlToRight)Column If Cells(i, j) = Cells(i, k) Then Cells(i, j)IColorIndex = 5 End If Next k Next jNext iEnd Sub这里做了两个,一个只筛选一半,一个全部筛选,你试试,有疑问再追问。望采纳,谢谢。

字符串查重复出现的次数

main(){ char getstring[100]; //要输入的内容 char find=0; //要查找的内容 int i,n; scanf("%s",getstring); //输入母串 scanf("%s",&find); //输入字母 for(i=0,n=0;i<100;i++){ if(find==getstring[i]) n++ } printf("%d times",n);}

以下的公式可以计算出excel单元格内一段字符串中某个字符(字母,数字,汉字等),其中单元格A1是字符串所在位置,A2是要统计的字符,也可以直接用某个字符代替A2  公式:=LEN(A1)-LEN(SUBSTITUTE(A1,A2,""))  例如A1中的数值是:65999,在B1中输入上面的公式:=LEN(A1)-LEN(SUBSTITUTE(A1,9,"")),所得结果是3 (有三个9)

判断一个字符串中某个指定的字符出现的次数,可以使用函数:【Replace】思路:使用Replace函数将指定的字符替换为空,然后再用函数【Len】求出替换前和替换后的差值,即为出现的次数。例如:字符串【12312345】中判断字符【2】出现的次数dim Rc as integerRc=len("12312345")-len(replace("12312345","2",""))

公式如下:=countif(A1:E100,"a")

相关百科

热门百科

首页
发表服务