Vba 清除选定范围内行内的重复值
这是我第一次来这里 我有一个代码,可以删除和重复曾经在选择范围内合并的值,以便对数据应用过滤器。(见下文) 此代码将重复与其他单元格合并的单个单元格中的值 现在,我找不到方法继续(在同一个选择中)清除一行中的重复值。。。换句话说:我不想向下(按列方向)清除所有重复的单元格值,只想查找并清除excel工作表右侧(按行方向)的所有重复单元格值 我遇到过这样的情况:Vba 清除选定范围内行内的重复值,vba,excel,Vba,Excel,这是我第一次来这里 我有一个代码,可以删除和重复曾经在选择范围内合并的值,以便对数据应用过滤器。(见下文) 此代码将重复与其他单元格合并的单个单元格中的值 现在,我找不到方法继续(在同一个选择中)清除一行中的重复值。。。换句话说:我不想向下(按列方向)清除所有重复的单元格值,只想查找并清除excel工作表右侧(按行方向)的所有重复单元格值 我遇到过这样的情况: Sub FindDups() ScreenUpdating = False FirstItem = ActiveCell.Value
Sub FindDups()
ScreenUpdating = False
FirstItem = ActiveCell.Value
SecondItem = ActiveCell.Offset(0, 1).Value
Offsetcount = 1
Do While ActiveCell <> ""
If FirstItem = SecondItem Then
ActiveCell.Offset(Offsetcount, 0).Value = ("")
Offsetcount = Offsetcount + 1
SecondItem = ActiveCell.Offset(Offsetcount, 0).Value
Else
ActiveCell.Offset(Offsetcount, 0).Select
FirstItem = ActiveCell.Value
SecondItem = ActiveCell.Offset(1, 0).Value
Offsetcount = 1
End If
Loop
ScreenUpdating = True
MsgBox "Done"
End Sub
Sub-FindDups()
屏幕更新=错误
FirstItem=ActiveCell.Value
SecondItem=ActiveCell.Offset(0,1).Value
Offsetcount=1
当ActiveCell“”时执行此操作
如果FirstItem=SecondItem,则
ActiveCell.Offset(Offsetcount,0)。值=(“”)
偏移量=偏移量+1
SecondItem=ActiveCell.Offset(Offsetcount,0).Value
其他的
ActiveCell.Offset(Offsetcount,0)。选择
FirstItem=ActiveCell.Value
SecondItem=ActiveCell.Offset(1,0).Value
Offsetcount=1
如果结束
环
屏幕更新=真
MsgBox“完成”
端接头
但这段代码正是我想要的:清除列中的重复值。我想要的是一个清除行中重复值的代码(到右侧单元格)
有人知道怎么做吗
提前感谢从您的第一个子系统更改此行:
Range(MergeAddress).Value = MergeValue
到
我使用一个变量,在一张纸上有一个列表,在数据库上有一个过滤器,那个过滤器 '删除宏 “别给我看 ' Application.ScreenUpdating=False ' 'A1标题和a2,3,4,5上的例外列表要删除 工作表(“例外列表”)。选择 “计算例外情况
d = ActiveWorkbook.Worksheets("Exception List").Range("A1", Range("A1").End(xlDown)).Rows.Count
'激活数据库以进行筛选
表格(“1.原始数据”)。激活
'统计数据库数据(a3,因为我从a3开始,使用你需要的任何东西)
F=活动工作簿。工作表(“1.原始数据”)。范围(“A3”,范围(“A3”)。结束(xlDown))。行数+2
'为每个异常循环
For i = 2 To d
'exception loop taking
Sheets("Exception List").Select
Criteria1 = Range("a" & i).Value
Sheets("1. Raw Data").Select
'filter x exception in loop at data base ( A to Z in my case)
ActiveSheet.Range("$A$3:$Z$" & F).AutoFilter Field:=5, Criteria1:= _
Criteria1
'down one of visible rows ( form header to first visible data)
Range("a3").Select
With Worksheets("1. Raw Data").AutoFilter.Range
Range("a" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(3).Row).Select
以
'select all data with exception
Range(Selection, Selection.End(xlToRight).End(xlDown)).Select
'erase exeptions
Selection.delete Shift:=xlUp
'erase filter
ActiveSheet.Range("$A$3:$Z$3").AutoFilter Field:=5
“下一个例外
接下来我
Application.ScreenUpdating = True
'by christian marcos
美好的工作;)Thks
'select all data with exception
Range(Selection, Selection.End(xlToRight).End(xlDown)).Select
'erase exeptions
Selection.delete Shift:=xlUp
'erase filter
ActiveSheet.Range("$A$3:$Z$3").AutoFilter Field:=5
Application.ScreenUpdating = True
'by christian marcos
sorry now on code everything
> 'delete Macro dont show srceen
>
> Application.ScreenUpdating = False
>
>
> 'List of exception on A1 title and a2,3,4,5 to erase
>
> Sheets("sheet1").Select
>
> 'count exceptions
>
>
> d = ActiveWorkbook.Worksheets("Exception List").Range("A1", Range("A1").End(xlDown)).Rows.Count
>
> 'activate data base to filter Sheets("1. Raw Data").Activate
> 'count data base data ( a3 beacuse mine start at a3, use whatever you need) F = ActiveWorkbook.Worksheets("1. Raw
> Data").Range("A3", Range("A3").End(xlDown)).Rows.Count + 2 'loop for
> each exception
>
> For i = 2 To d
> 'exception loop taking
> Sheets("Exception List").Select
> Criteria1 = Range("a" & i).Value
>
> Sheets("1. Raw Data").Select
> 'filter x exception in loop at data base
> ActiveSheet.Range("$A$3:$Z$" & F).AutoFilter Field:=5, Criteria1:= _
> Criteria1
> 'down one of visible rows ( form header to first visible data)
> Range("a3").Select
> With Worksheets("1. Raw Data").AutoFilter.Range
> Range("a" & .Offset(1, 0).SpecialCells(xlCellTypeVisible)(3).Row).Select
> End With
>
> 'select all data with exception
> Range(Selection, Selection.End(xlToRight).End(xlDown)).Select
> 'erase exeptions
> Selection.delete Shift:=xlUp
> 'erase filter
> ActiveSheet.Range("$A$3:$Z$3").AutoFilter Field:=5 'next exception
> Next i
>
> Application.ScreenUpdating = True
>
>
> 'by christian marcos