首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >有没有办法遍历电子表格中的3张表,并比较这些值,如果找到,就说true,如果不是false

有没有办法遍历电子表格中的3张表,并比较这些值,如果找到,就说true,如果不是false
EN

Stack Overflow用户
提问于 2019-05-24 01:35:11
回答 1查看 44关注 0票数 0

我对Macro非常陌生。如果你能帮我开始,那就太好了。我的工作簿里有3张纸。我有第四页,其中包含电子邮件地址。我想采取每个电子邮件地址从第4页,并与其他页进行比较。如果在工作表1中找到,则在工作表4中创建一个列,其名称为工作表1,选择true或False。

Sht4中的列:

代码语言:javascript
复制
  EmailAddress(B), Enabled, Name, Domain 

我正在尝试构建一个可以做到这一点的宏。

代码语言:javascript
复制
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

我期望在sht4中。创建列H1,H2,H3。在每一列中,如果在sht1中找到电子邮件地址,则在h1列中显示true或false,否则将显示true或false。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-24 01:48:12

只需尝试使用匹配公式,看看是否返回数字:

代码语言:javascript
复制
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$1 & ""'!$A:$A""),0))"
        .Value = .Value
    End With
End With

  • Sheet1在A列中有20042005
  • Sheet2在A列中有2006
  • Sheet3在A列中有2007
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56280346

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档