У меня есть диапазон в столбце D и диапазон в столбце F. Эти диапазоны содержат строки, строки в столбце D уникальны (то есть они не повторяются), а строки в столбце F также уникальны.Однако столбцы D и F большую часть времени должны содержать одни и те же строки, хотя они могут быть в другом порядке.Строки выглядят примерно так:
tag:(0004)X-axis
tag:(0005)Z-axis
tag:(0005)X-axis
tag:(0006)Z-axis
Иногда в столбце D могут отсутствовать некоторые строки или могут быть новые строки.Я хочу сравнить столбец D со столбцом F, и если в столбце D есть новые строки, я хочу добавить (добавить) их в конец столбца F. Вот простой пример, использующий просто a, b, c вместо тега ": (00 ... bla ... bla ... ":
Column D Column F
a b
b c
c d
e e
f g
g
В столбце D отсутствует" d ", но есть" a "и" f "... так что" a "и"f "будет добавлен (добавлен) в конец столбца F, например:
Column F
b
c
d
e
g
a
f
Я пытался использовать это как менее прямой маршрут, но я даже не могу заставить это работать:
Sub RT_COMPILER()
Dim Lastrow As Long
Dim r As Long
Dim n As Long
For r = 1 To Lastrow
n = Application.WorksheetFunction.CountIf(Range("D:D"), Cells(r, 6))
If n = 0 Then
Cells(r, 7) = Cells(r, 4)
Else
Cells(r, 7) = ""
End If
Next
End Sub
Я подумал: если бы я мог вставить новые строки в столбец G ... затем удалить пробелы, затем скопировать и вставить их, добавив их в конец столбца F ... но, похоже,просто определите, что последний элемент в столбце D - это «g», а последний элемент в столбце F - пустой, и он вытянет «g» из списка, даже если у него уже есть «g» ...
Когда я первоначально нашел этот код, он имел:
n = Application.WorksheetFunction.CountIf("D:D", Cells(r, 6))
он не работал, поэтому я изменил его на:
n = Application.WorksheetFunction.CountIf(Range("D:D"), Cells(r, 6))