有没有办法循环遍历电子表格中的 3 张表并比较值,如果找到就说真,如果不是假

Is there way to loop through 3 sheets in the spreadsheet and compare the values and if found say true and if not false

我对宏还很陌生。如果你能帮助我开始,那就太好了。 我在工作簿中有 3 sheets。我有第 4 个 sheet,其中包含电子邮件地址。我想从第 4 个 sheet 获取每个电子邮件地址并与其他 sheet 进行比较。如果在 sheet 1 中找到,则在 sheet 4 中创建一个名称为 sheet 的列 1 说真否则假。

Sht4 中的列:

  EmailAddress(B), Enabled, Name, Domain 

我正在尝试构建一个可以执行此操作的宏。

Sub vLookUpEmails()

    Dim sht1 As Worksheet
    Dim sht2 As Worksheet
    Dim sht3 As Worksheet
    Dim sht4 As Worksheet

    Set sht1 = Sheets("h1")
    Set sht2 = Sheets("h2")
    Set sht3 = Sheets("h3")
    Set sht4 = Sheets("h4")

    'Creating columns in the sheet 4

    sht4.Columns("H:H").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("H1").Value = "h1"

    sht4.Columns("I:I").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("I1").Value = "h2"

    sht4.Columns("J:J").Insert Shift:=xlToRight, CopyOrigin:=xlFormatFromLeftOrAbove
    Range("J1").Value = "h3"

    'Getting last row
    combLastRow = sht1.Cells(Rows.Count, "A").End(xlUp).Row

End Sub

我希望在 sht 4 中创建列 H1、H2、H3。在每一列中,如果在 sht1 中找到电子邮件地址,则表示 true 或 false,然后在 h1 列中,它表示 true 否则为 false。

尝试使用匹配公式,看看是否返回了一个数字:

With sht4
    Dim lstrw As Long
    lstrw = .Cells(.Rows.Count, 2).End(xlUp).Row
    With .Range(.Cells(2, 8), .Cells(lstrw, 10))
        .Formula = "=ISNUMBER(MATCH($B2,INDIRECT(""'"" & H & ""'!$A:$A""),0))"
        .Value = .Value
    End With
End With

  • Sheet1 在 A 列中有 20042005
  • Sheet2 在 A 列中有 2006
  • Sheet3 在 A 列中有 2007