excel - 将单元格数据与不同的工作簿数据进行比较?
问题描述
VBA 中有没有办法查看外部工作簿是否包含来自不同工作簿的值?本质上,我有一个带有宏按钮的工作簿。一旦按下按钮,它将从特定单元格 A2 中获取一个电子邮件地址。我需要的是能够从单元格 A2 获取数据输入的宏,并确定不同的工作簿是否也包含该电子邮件。我不想将电子邮件硬编码到 VBA 中,因为这个具有宏功能的工作簿是一个模板,并且会不断地输入不同的电子邮件。因此,此宏功能将需要检查此外部工作簿以查看输入的电子邮件是否包含在该工作簿中。我试图在网上查找资源,但我不断收到编译器错误。所以我不知道我做错了什么。我目前拥有的代码非常基本,但我想,
Dim workbookExternal As Workbook
Dim cellValue As Integer
Set workbookExternal = Workbooks.Open(path name to excel wb)
Dim worksheetExternal As Worksheet
Set worksheetExternal = workbookExternal.Worksheets("Client_Data")
Dim strEmailRecipient As String
Dim emailValue As String
emailValue = Range("A2") ' Cell where the email is being placed
If InStr(worksheetExternal.Range("A1:AA100"), emailValue) = emailValue Then ' determining if external
' workbook range contains the email value thats equal to the data stored in A2 of this workbook
MsgBox ("Success")
Else
MsgBox ("Error")
End If
这只是目前确定代码是否正确执行的基本结构。
任何帮助将不胜感激!
解决方案
这是一个很好的案例Range.Find
。
Dim foundRng as Range
Set foundRng = worksheetExternal.Range("A1:AA100").Find(What:=emailValue, _
LookIn:=xlValues, LookAt:=xlPart)
If Not foundRng Is Nothing Then ' test if the Find was successful
MsgBox "Email is at location: " & foundRng.Address(False, False)
Else
MsgBox "Email not found."
End If
推荐阅读
- node.js - node: npm install:: 下例如何获取文件路径并测试示例
- c++ - C++ 条件模板构造函数
- pine-script - 用于循环混淆的 Pinescript
- javascript - 返回数组值,而不是 Javascript 中的数组迭代器
- solidity - web3.js如何访问合同数组属性
- python - 如何实现高效的 Python 算法来查找匹配数字?
- android - 访问文件创建抛出错误打开失败:Android 11 中的 EACCES(权限被拒绝)
- javascript - 为什么这段代码不会显示hello world?它说 text.content 为 null
- marklogic - cts.estimate 显示错误的文档计数
- python - 使用 AWS CDK for python 创建 AWS 网络负载均衡器时无法传递 ec2-instance 详细信息