У меня есть 2 столбца разной длины.
В приведенном ниже цикле Do While
Do While main.Offset(i, 0).Value <> "" Or main.Offset(i, 1).Value <> ""
используя OR, он генерирует тонны нерелевантных данных (например, не совпадает имя / тег в sheet2), поэтому я изменяю на AND, он работает отлично, только если оба столбца заканчиваются в одной строке. (хотя есть дубликаты, но они не были моей главной заботой сейчас)
Do While main.Offset(i, 0).Value <> "" And main.Offset(i, 1).Value <> ""
Но используя логический оператор «И», он останавливается на полпути (если один столбец короче другого. Может ли какой-нибудь эксперт пролить свет на то, как получить данные, даже если один столбец короче другого?
Я попытался добавить скобки между обоими утверждениями, поместить один столбец на другой лист или создать вложенный цикл do while, данные по-прежнему остаются прежними. Я также попробовал приведенный ниже код, но он дает все не относящиеся к делу данные, такие как «Кен, лето, Венди» в sheet2.
Do While (main.Offset(i, 0).Value <> "" And main.Offset(i, 1).Value <> "") Or (main.Offset(i, 0).Value <> "" And main.Offset(i, 1).Value = "")
поэтому мне было интересно, что я мог бы использовать для замены оператора And и дает мне правильные результаты?
Вот Xsheet, Sheet1, Sheet2.
Я не могу опубликовать более двух фотографий, поэтому я поместил их в одну.
Как показано на рисунке выше, Belle в Xsheet, а также активный случай.
Таким образом, 3355 должен быть в Sheet2. Еще один недостаток, где есть дубликаты 4987.
Я новичок в программировании, я прошу прощения, если я делаю ненужную ошибку. Спасибо за любой совет.