VBA 在第二个sheet中查找第一个sheet中不存在的值

VBA 在第二个sheet中查找第一个sheet中不存在的值
 Sub Macro2()
'
' Macro2 Macro
' 宏由 Lizm 录制,时间: 2019/04/10
'
 
'
Dim colSvcId As Integer
Dim i As Integer
Dim j As Integer
j = 47
Dim valS As String
Dim findRes As Boolean
 
'查找service_id
For rowSvcId = 2 To 43
 
    valS = Range("C" & rowSvcId).Text
    
    If Len(valS) > 0 Then
        findRes = False
        
        ' 在sheet4中查找
        For i = 5 To 78
            If InStr(1, Sheets("Sheet4").Cells(i, 3).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        '在sheet5中查找
        For i = 4 To 22
            If InStr(1, Sheets("Sheet5").Cells(i, 3).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        
        
        If (findRes = False) Then
                Sheets("Sheet3").Range("C" & j).Value = valS
                j = j + 1
        End If
    End If
    
Next
 
 
 
 
 
 
 
'查找packageName(HU)
j = 47
For rowPkgNm = 2 To 43
    valS = Range("D" & rowPkgNm).Text
    
    If Len(valS) > 0 Then
        findRes = False
        
        ' 在sheet4中查找
        For i = 5 To 78
            If InStr(1, Sheets("Sheet4").Cells(i, 4).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        '在sheet5中查找
        For i = 4 To 22
            If InStr(1, Sheets("Sheet5").Cells(i, 4).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        
        
        If (findRes = False) Then
                Sheets("Sheet3").Range("D" & j).Value = valS
                j = j + 1
        End If
    End If
    
Next
 
 
 
 
 
'查找base_url
j = 47
For rowBaseUrl = 2 To 43
    valS = Range("F" & rowBaseUrl).Text
    
    If Len(valS) > 0 Then
        findRes = False
        
        ' 在sheet4中查找
        For i = 5 To 78
            If InStr(1, Sheets("Sheet4").Cells(i, 6).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        '在sheet5中查找
        For i = 4 To 22
            If InStr(1, Sheets("Sheet5").Cells(i, 6).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        
        
        If (findRes = False) Then
                Sheets("Sheet3").Range("F" & j).Value = valS
                j = j + 1
        End If
    End If
    
Next
 
 
 
 
 
'查找client
j = 47
For rowClient = 2 To 43
    valS = Range("G" & rowClient).Text
    
    If Len(valS) > 0 Then
        findRes = False
        
        ' 在sheet4中查找
        For i = 5 To 78
            If InStr(1, Sheets("Sheet4").Cells(i, 7).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        '在sheet5中查找
        For i = 4 To 22
            If InStr(1, Sheets("Sheet5").Cells(i, 7).Text, valS, 1) > 0 Then
                findRes = True
                Exit For
            End If
        Next
        
        
        If (findRes = False) Then
                Sheets("Sheet3").Range("G" & j).Value = rowClient
                j = j + 1
        End If
    End If
    
Next
 
End Sub

 

posted @   原子切割员  阅读(665)  评论(0编辑  收藏  举报
编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
点击右上角即可分享
微信分享提示