excel - VBA 使用另一个数组查找一个数组中的值

标签 excel vba

我有 2 个数组。

  1. Array1 是一个包含 3 列的列表。
  2. Array2 是包含 2 列的列表。
  3. 两个数组的第 1 列和第 2 列具有相同的信息。

我需要弄清楚如何创建第三个数组,该数组包含 Array1 中的 3 列,并且仅包含属于 Array2 的项目。

非常感谢任何帮助。

最佳答案

类似这样的事情:

假设您的数组位于 A1:C10E1:F10 中,请进行更改以适应。

Sub Arid()
Dim X
Dim Y
Dim Z

Dim lngCnt As Long
Dim lngCnt2 As Long
Dim lngCnt3 As Long

X = Range([a1], [c10]).Value2
Y = Range([E1], [F10]).Value2

ReDim Z(1 To UBound(X), 1 To 3)

For lngCnt = 1 To UBound(X, 1)
    For lngCnt2 = 1 To UBound(Y, 1)
        If X(lngCnt, 1) = Y(lngCnt2, 1) Then
            If X(lngCnt, 2) = Y(lngCnt2, 2) Then
                lngCnt3 = lngCnt3 + 1
                Z(lngCnt3, 1) = X(lngCnt, 1)
                Z(lngCnt3, 2) = X(lngCnt, 2)
                Z(lngCnt3, 3) = X(lngCnt, 3)
                Exit For
            End If
        End If
    Next
Next

End Sub

关于excel - VBA 使用另一个数组查找一个数组中的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43579645/

相关文章:

excel - 在 excel 中摆脱 NA

excel - Ctrl-End 不会将我带到最后一个单元格

excel - 如何在Excel中选择最常见的数字中最高的?

vba - 在VBA中对数组进行排序

excel - 将任何长度的有符号十六进制数转换为有符号十进制数 (Excel)

Python - 使用 pandas 格式化 excel 单元格

excel - 在 Excel 中用正则表达式替换

ruby-on-rails - 使用 Ruby Gem 电子表格合并单元格

excel - 如何在 Excel VBA 中创建表格到电子邮件?

VBA - 打开文件夹中的文件并打印名称