【发布时间】:2021-11-15 03:54:14
【问题描述】:
情况: 我有一个 excel 宏,它将一列数据导入到下一个空闲列中的现有工作表中,它还清除了将在宏完成时设置的前一列的格式(我在这里尝试解决的位) )。
我需要代码将新列中的每个单元格与前一列进行比较,以查看是否匹配,如果不匹配则突出显示该单元格。
问题: 我不断收到类型不匹配错误,或者代码无法运行。我的最新尝试(包括将唯一数据复制到不同的工作表,如果工作的话,这将是一个奖励)如下。
Dim rngCell As Range
For Each rngCell In Range(Cells(2, Worksheets("Data").Columns(LastColumn)), Cells(10000, Worksheets("Data").Columns(LastColumn)))
'I know hardcoding values is bad, but i did this for testing purposes
If WorksheetFunction.CountIf(Range(Cells(2, Worksheets("Data").Columns(LastColumn)), Cells(10000, Worksheets("Data").Columns(LastColumn))), rngCell) = 0 Then
Range("D" & Rows.Count).End(xlUp).Offset(1) = rngCell
End If
Next
理想结果: 该代码贯穿并突出显示第 1 列中的唯一值(在每天导入新列时使用列索引引用)。 该代码将唯一值复制到另一张表中以方便使用。
提前感谢任何指针或代码。
【问题讨论】:
-
请说明您的要求 - 对我来说,您并不清楚您想要实现什么:突出显示新项目,复制独特的价值......如果这很清楚,那么为您提供帮助会更容易。
-
您的问题标题与您在问题文本中的解释以及您显示的代码不匹配。请更好地解释你想要完成什么以及你认为你的代码应该做什么。
-
您在包含的代码中的哪个位置复制到不同的工作表?我认为包含一些示例数据的图片以及结果应该是什么样子是最简单的。你说你想在第二列中突出显示,但你说的是第 1 列。据我所知,代码中没有设置格式。
标签: excel vba formatting compare