我正在研究一个将合并两个不同的订单数据来源的宏。第一个源将包含旧订单以及一些新订单,第二个源将仅包含旧订单,并且将在手动更新的列中包含其他数据。
我的想法是从第二个来源获取订单总数,在第一个来源的订单总数之后将它们粘贴到工作表中,然后根据现有跟踪器中的订单号搜索新文件中的所有订单号。我有一个 for 循环,它应该从新文件中找到尚未在跟踪器中的订单号,然后插入包含该订单详细信息的行。我在检查字符串是否存在于数组中的 if 语句中收到类型不匹配错误。请看一下这段代码:
Dim r As Integer
For r = 1 To 1000
Dim NewOrd As String
NewOrd = Range(Cells(r, 1), Cells(r, 1)).Value
Dim ExistArray As Variant
ExistArray = Range("a1", Range("a1").End(xlUp))
Sheets("Sheet2").Select
If IsEmpty(NewOrd) Then
Exit For
End If
If Not UBound(Filter(ExistArray, NewOrd)) >= 0 And NewOrd <> "" Then
Rows(r).Select
Selection.Copy
Sheets("Sheet3").Select
Rows(r).Select
Selection.Insert Shift:=xlDown
Application.CutCopyMode = False
End If
r = r + 1
Next r
我尝试了几种不同的方法来设置数组,尝试添加选项显式,并尝试嵌套循环(不是我最聪明的效率时刻)。将不胜感激另一双眼睛!
谢谢!