Эта таблица составлена путем вытягивания переменного числа столбцов из нескольких рабочих книг в одну. Я отслеживаю индекс столбца для «Key1» и «Key2» с целыми числами «i1» и «i2» соответственно.
+-------------+-----------+-------------+-----------+-----------+--------+-------------+-----------+-------+
| Thisjust | Indexcode | Specialcode | Key1 | Indexcode | Some | Specialcode | Key2 | MATCH |
+-------------+-----------+-------------+-----------+-----------+--------+-------------+-----------+-------+
| isanexample | 101 | 27223 | 101_27223 | 101 | Values | 1112 | 101_1112 | |
| isanexample | 102 | 27224 | 102_27224 | 102 | Values | 1113 | 102_1113 | |
| isanexample | 103 | 27225 | 103_27225 | 103 | Values | 1114 | 103_1114 | |
| isanexample | 104 | 27226 | 104_27226 | 104 | Values | 1115 | 104_1115 | |
| isanexample | 108 | 11130 | 108_11130 | 105 | Values | 1116 | 105_1116 | Yes |
| isanexample | 106 | 27228 | 106_27228 | 106 | Values | 1117 | 106_1117 | |
| isanexample | 107 | 27229 | 107_27229 | 107 | Values | 1118 | 107_1118 | |
| isanexample | 110 | 27227 | 110_27227 | 108 | Values | 11130 | 108_11130 | Yes |
| isanexample | 109 | 37345 | 109_37345 | 109 | Values | 1112 | 109_1112 | |
| isanexample | 105 | 37346 | 105_37346 | 110 | Values | 1113 | 110_1113 | |
| isanexample | 111 | 37347 | 111_37347 | 111 | Values | 1114 | 111_1114 | |
| isanexample | 112 | 37348 | 112_37348 | 112 | Values | 1115 | 112_1115 | |
| isanexample | 113 | 37349 | 113_37349 | 113 | Values | 1116 | 113_1116 | |
| isanexample | 114 | 37350 | 114_37350 | 114 | Values | 1117 | 114_1117 | |
| isanexample | 115 | 37351 | 115_37351 | 115 | Values | 1118 | 115_1118 | |
| isanexample | 116 | 11138 | 116_11138 | 116 | Values | 11138 | 116_11138 | Yes |
| isanexample | 117 | 11139 | 117_11139 | 117 | Values | 11139 | 117_11139 | Yes |
| isanexample | 118 | 11140 | 118_11140 | 118 | Values | 11140 | 118_11140 | Yes |
+-------------+-----------+-------------+-----------+-----------+--------+-------------+-----------+-------+
Я проверяю, если
ЛИБО key1 в определенной строке соответствует одной из ячеек key2
ИЛИ, если key2 в определенной строке соответствует одной из ячеек key1
Я использовал эту формулу для достижения этой цели
=IF(AND(ISNA(MATCH(H2,$D$2:$D$19,0)),ISNA(MATCH(D2,$H$2:$H$19,0))),"","Yes")
Знание о том, что вся эта таблица может иметь разное количество столбцов, а порядок столбцов также является переменным:
Как мне выполнить функцию сопоставления в VBA? Столбец MATCH всегда будет в конце.