注文データの 2 つの異なるソースを統合するマクロに取り組んでいます。最初のソースには古い注文と一部の新しい注文が含まれ、2 番目のソースには古い注文のみが含まれ、手動で更新された列に追加データが含まれます。
これに対する私の考えは、2 番目のソースから注文合計を取得し、最初のソースからの注文合計の後にシートに貼り付けてから、既存のトラッカーからの注文番号に対して新しいファイルからすべての注文番号を検索することです。新しいファイルからトラッカーにまだない注文番号を見つけて、その注文の詳細を含む行を挿入する 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
配列を設定するいくつかの異なる方法を試し、オプションの明示的な追加を試み、ループのネストを試みました (私の最も明るい効率の瞬間ではありません)。別の目のセットをいただければ幸いです。
ありがとう!