excel - 删除重复项并对行进行排序
问题描述
我有两个不同的问题,但它们可能有相同的原因。
我首先需要删除工作表的所有重复行。A 列包含一个索引值,该索引值作为文本值导入,例如“1”、“2”...等。
我搜索并得到了这行代码:
VarAnzahlZeilen = 50 '(actually calculated values but they are correct (F8))
VarAnzahlSpalten =50
Worksheets("Filter").Range(Cells(2, 1), Cells(VarAnzahlZeilen, VarAnzahlSpalten)).RemoveDuplicates Columns:=Array(1), Header _
:=xlNo
没有任何反应,所有重复的行仍在工作表中。
与应该对剩余行进行排序的下一行代码相同:
Worksheets("Filter").Range(Cells(2, 1), Cells(2, VarAnzahlSpalten)).Sort Key1:=Range("A2"), Header:=xlNo
什么都没发生。
显示了一个测试 msgbox 并且工作表/范围组合也是正确的(我可以更改值)。
整行将是重复的,因为导入是以这种方式工作的,但由于索引在 A 列中,我选择它作为重复的指标。
这是我当前的版本:
With Worksheets("Filter")
.Range(.Cells(2, 1), .Cells(VarAnzahlZeilen, VarAnzahlSpalten)).RemoveDuplicates Columns:=Array(1), Header:=xlNo
.Range(.Cells(2, 1), .Cells(VarAnzahlZeilen, VarAnzahlSpalten)).Sort Key1:=Range("A2"), Header:=xlNo
End With
解决方案
始终将您的范围引用限定为工作表对象,否则将隐式假定 ActiveSheet 引用:
With Worksheets("Filter")
.Range(.Cells(2, 1), .Cells(VarAnzahlZeilen, VarAnzahlSpalten)).RemoveDuplicates Columns:=Array(1), Header:=xlNo
End With
“.Cells()”中的点是引用“With”语句中引用的对象(即“Worksheets("Filter")“)
推荐阅读
- python - 如何在 pandas 中使用自定义聚合函数获取 cumsum
- mercurial - 确实需要两个杰出的分支中的两个头
- php - 单元测试:如何防止执行内置 PHP 函数
- pandas - 将数据汇总到不同年份的一个点并将它们绘制在图表中
- reactjs - 在 React 应用程序中定义除默认 env 文件外的 .env 文件
- android - "Unresolved reference: Parcelize" after updating to Kotlin 1.3.30
- django - 使用 Swagger 记录具有多个响应的 DRF GET 端点
- awk - 匹配两个文件中的 valueS 并在选定的列中替换
- python - 将 input() 分配给变量时出现 NameError (Python2.7.11)
- latex - 如何在双盲评审过程中删除作者姓名和隶属关系?