Я относительно новичок в макросах и VBA в Excel, поэтому мне нужно несколько советов о том, как решить мою текущую проблему.
Конечной целью моего проекта является макрокоманда сравнения двух наборов данных, организованных в строки и столбцы (скажем, таблица A является исходными данными, а таблица B основана на вводе пользователем). Каждая строка в таблице B должна соответствовать строке в таблице A, но они могут быть не в порядке, или могут быть неправильные записи в таблице B.
Я думаю, что для первой строки в каждой таблице макрос будет сравнивать каждую ячейку слева направо:
If Sheets("sheet1").Cells(2, 1) = Sheets("sheet2").Cells(2, 1) Then
If Sheets("sheet1").Cells(2, 2) = Seets("sheet2").Cells(2, 2)
ЭСТ, ЭСТ.
Моя проблема возникает, когда ячейка в таблице B не соответствует таблице A.
Во-первых, я бы хотел, чтобы он проверял строку B 1 на следующую строку в A и продолжал идти по всей таблице A, пока не найдет «полное соответствие» со всеми пятью столбцами соответствия строк.
Я пытался сделать это с остальными, если и Для / Следующие позиции
For row= 2 to 10
'if statements go here
Else If Sheets("sheet1").Cells(2, 1) <> Sheets("sheet2").Cells(2, 1)
Next row
Возможно, я совершенно не понимаю синтаксис здесь, но мне еще предстоит создать ситуацию, когда, если критерии не выполнены, он переходит к следующей строке.
Если полное совпадение не найдено, следует выделить последнюю ячейку в строке 1 таблицы B, которая не может быть сопоставлена.
Затем , независимо от того, найдено или нет совпадение, мы переходим к строке 2 таблицы B и начинаем весь процесс заново.
Итак, у меня есть логика (я думаю), где сравнение if будет внутри цикла (или чего-то еще), который будет циклически проходить по таблице A строка за строкой. Тогда весь этот процесс будет в другом цикле (или что-то), который будет циклически проходить по таблице B.
В конце процесса либо не будет выделенных ячеек, показывающих, что все введенные данные верны, либо будут выделены ячейки, показывающие данные, которые не совпадают.
Я вполне уверен, что циклический переход по таблице B не является проблемой. Скорее, мне трудно заставить макрос перейти к следующей таблице. Строка, если что-то не совпадает.
Пожалуйста, дайте мне знать, если мне нужно уточнить что-нибудь.
Спасибо!