两个sheet页分别命名“Sheet700”,“Sheet800”。
判断"Sheet700”sheet中的数据是否在“Sheet800”中存在,不存在标蓝色。
存在的场合,“Sheet800”sheet中的数据和“Sheet700”的2~41行比较,不一样标注青色,并在最前面标注黄色。
Sub Macro3()
Dim tem, tem1 As String
Dim text1, text2 As String
Dim i As Integer, hang1 As Long, hang2 As Long, lie As Long, maxhang As Long, maxlie As Long
'开始时间
Dim sngStart As Single
sngStart = Timer
'底色恢复
Sheets(1).Select
Columns("A:A").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("A1").Select
'底色恢复
Sheets(2).Select
Rows("2:1009416").Select
With Selection.Interior
.Pattern = xlNone
.TintAndShade = 0
.PatternTintAndShade = 0
End With
Range("A1").Select
'最大行数设定
maxhang = 250
'最大列数设定
maxlie = 41
For hang1 = 2 To maxhang
Dim a As Integer
a = 0
'第一个sheet中的第一列格的内容
tem = Sheets(1).Cells(hang1, 1)
'MsgBox ("TEM1=" & tem)
For hang2 = 2 To maxhang
'第二个sheet中的第一列格的内容
tem1 = Sheets(2).Cells(hang2, 1)
'发现相同数据的场合
If tem1 = tem Then
a = 1
'黄色设定
Sheets(2).Cells(hang2, 1).Interior.ColorIndex = 6
'MsgBox ("TEM2=" & Sheets(2).Cells(hang2, 1))
For lie = 4 To maxlie
text1 = Sheets(1).Cells(hang1, lie)
text2 = Sheets(2).Cells(hang2, lie)
If text1 <> text2 Then
'MsgBox ("A" & lie & "=" & Sheets(1).Cells(hang1, lie))
'MsgBox ("B" & lie & "=" & Sheets(2).Cells(hang2, lie))
'青色设定
Sheets(2).Cells(hang2, lie).Interior.ColorIndex = 8
End If
Next
End If
Next
'不存在的场合,蓝色设定
If a = 0 Then
Sheets(1).Cells(hang1, 1).Interior.ColorIndex = 5
End If
Next
'保存文档
Application.DisplayAlerts = False
ThisWorkbook.Save
Application.DisplayAlerts = True
'输出时间差
MsgBox ("ok,costTime:" & Timer - sngStart)
End Sub
分享到:
相关推荐
在这个VBA脚本实例中,我们探讨的是如何通过编程来对比两个Excel工作簿或工作表中的数据,确保数据的一致性。以下是对这个主题的详细讲解: 首先,我们需要理解VBA的基本结构和语法。VBA是基于Visual Basic的,这...
比对两个Sheet的数据通常涉及以下步骤: 1. **打开工作簿**:使用`Workbooks.Open`方法打开包含待比对数据的工作簿。 2. **选择工作表**:通过索引或名称访问`Worksheets`集合中的工作表,例如`Worksheets("Sheet1...
在Excel中,有时我们需要对比两个数据列,找出其中相同的数据项。这通常是一个繁琐的手动过程,但如果使用VBA(Visual Basic for Applications)编程,我们可以编写宏来自动化这个任务。本示例旨在帮助初学者理解...
在Excel工作中,有时候我们需要对比两个或多个工作表的数据差异,以检查数据的准确性或更新状态。Excel自身虽然没有内置的工具直接进行工作表的详细比对,但可以通过编写宏或者利用第三方工具来实现这一功能。这里...
5. **数据对比**: 使用`StrComp`函数比较两个单元格中的字符串数据是否相等。`StrComp(celDateOne.Value, celDateTwo, 1)`中的参数1表示忽略大小写差异。 6. **标记结果**: 如果找到匹配项,则将相应的单元格字体...
- **用途**: 同时选择"sheet1"和"sheet2"两个工作表。 - **作用**: 在多个工作表上执行相同的操作,提高效率。 27. **Sheets("sheet1").Delete 或 Sheets(1).Delete** - **用途**: 删除"sheet1"工作表。 - **...
**功能**: 同时选择名为"sheet1"和"sheet2"的两个工作表。这对于批量处理或应用相同的格式设置非常有用。 #### 27. 删除工作表 (Sheets("sheet1").Delete 或 Sheets(1).Delete) **功能**: 删除名为"sheet1"或索引...
在IT行业中,尤其是在数据分析、报表处理等领域,对比两个Excel表格之间的差异是一项常见的任务。VB(Visual Basic)是一种常用的编程语言,它可以与Excel紧密结合,通过编写脚本来实现自动化处理,包括对比Excel...
1. **两层圆环图**:这是一种数据可视化工具,由两个相互嵌套的圆环构成,每个圆环代表一组数据,环内部分表示各自数据的相对占比,环间部分则用来比较两个圆环之间的差异。这种图表尤其适用于显示同一类别内部以及...
2. **双Y轴**:在同一个图表中,同时显示两个独立的Y轴,通常用于比较不同量级或单位的数据。这种功能使得用户可以在同一图形上对比不同性质的变量,提高数据可视化效果。 3. **自动绘制多个sheet内容**:程序能够...
### 使用VBA比较两个工作表的内容 在日常工作中,我们经常需要对比两个Excel工作表中的数据,以便找出差异。此过程可以通过手动操作完成,但当数据量庞大时,这种方法不仅耗时而且容易出错。因此,利用VBA(Visual ...
- `u` 和 `a` 是灰色模型中的两个参数,分别代表截距和斜率。 - `x0` 是模型的初始值。 - `sum` 用于累加计算。 ##### 2. 数据准备 首先,代码选择工作表“Sheet1”,并清空B3至Y10范围内的内容,为后续数据处理做...
提供的两个`VBA`宏代码主要功能是实现跨工作簿的数据查找与替换操作,类似`VLOOKUP`函数的效果但更为灵活,支持在不同工作簿间进行数据匹配及更新。 #### 二、核心功能解析 1. **跨表查找与替换** - 这段代码的...