vba中取出相同项并建立新表
时间: 2023-02-24 14:22:10 浏览: 302
在 VBA 中,可以使用循环语句和数组来实现取出相同项并建立新表的操作。
步骤如下:
1. 首先,在工作表中选择需要取出相同项的列。
2. 在 VBA 编辑器中,编写代码,将数据存储到数组中。
3. 对数组中的数据进行遍历,取出相同项并存储到另一个数组中。
4. 将新数组中的数据复制到新工作表中,这就是新建立的表。
以下是代码示例:
```
Sub GetUniqueValues()
Dim arrData() As Variant
Dim arrUnique() As Variant
Dim i As Long, j As Long, k As Long
'将数据存储到数组中
arrData = Range("A1:A10").Value
'遍历数组,取出相同项
ReDim arrUnique(1 To 1)
arrUnique(1) = arrData(1, 1)
For i = 2 To UBound(arrData, 1)
For j = 1 To UBound(arrUnique, 1)
If arrData(i, 1) = arrUnique(j) Then
Exit For
End If
Next j
If j = UBound(arrUnique, 1) + 1 Then
ReDim Preserve arrUnique(1 To UBound(arrUnique, 1) + 1)
arrUnique(UBound(arrUnique, 1)) = arrData(i, 1)
End If
Next i
'将新数组中的数据复制到新工作表中
Worksheets.Add
Range("A1").Resize(UBound(arrUnique, 1), 1).Value = Application.Transpose(arrUnique)
End Sub
```
以上代码实现了从工作表 A1:A10 中取出不同项并建立新表的功能。