设定变量YD,在EXCLE中使用工作表函数Match分别定位变量YD在工作表1、工作表2、工作表3中E列的位置,使用宏怎么写
时间: 2024-02-03 12:13:55 浏览: 128
以下是使用 VBA 宏实现在三个工作表中查找变量 YD 并返回其在 E 列中的位置的代码:
```
Sub FindYD()
Dim ws1 As Worksheet, ws2 As Worksheet, ws3 As Worksheet
Dim ydRange1 As Range, ydRange2 As Range, ydRange3 As Range
Dim ydRow1 As Long, ydRow2 As Long, ydRow3 As Long
'设置三个工作表对象
Set ws1 = ThisWorkbook.Worksheets("工作表1")
Set ws2 = ThisWorkbook.Worksheets("工作表2")
Set ws3 = ThisWorkbook.Worksheets("工作表3")
'在三个工作表中使用Match函数查找变量YD在E列中的位置
Set ydRange1 = ws1.Range("E:E").Find("YD", LookIn:=xlValues, LookAt:=xlWhole)
If Not ydRange1 Is Nothing Then
ydRow1 = Application.Match("YD", ws1.Range("E:E"), 0)
End If
Set ydRange2 = ws2.Range("E:E").Find("YD", LookIn:=xlValues, LookAt:=xlWhole)
If Not ydRange2 Is Nothing Then
ydRow2 = Application.Match("YD", ws2.Range("E:E"), 0)
End If
Set ydRange3 = ws3.Range("E:E").Find("YD", LookIn:=xlValues, LookAt:=xlWhole)
If Not ydRange3 Is Nothing Then
ydRow3 = Application.Match("YD", ws3.Range("E:E"), 0)
End If
'输出结果
MsgBox "YD在工作表1中的E列位置为" & ydRow1 & vbCrLf & _
"YD在工作表2中的E列位置为" & ydRow2 & vbCrLf & _
"YD在工作表3中的E列位置为" & ydRow3
End Sub
```
该宏会在三个工作表的 E 列中搜索变量 YD 并返回其在每个工作表中的行号。如果在某个工作表中找不到 YD,则对应的行号将被设为 0。你可以将以上代码复制到 VBA 编辑器中并运行该宏。
阅读全文