Сравнить два столбца на разных листах в Excel при помощи VBA

Узнай цену своей работы

Формулировка задачи:

Добрый день!
Подскажите, как при помощи макроса мне сделать следующее:
Есть лист1 и лист2. На листе1 есть столбец с фамилиями (это выборка и список около 20 строк).На листе2 есть столбец с фамилиями и порядковыми номерами.
Необходимо найти на листе2 все фамилии с листа1 и подставить на лист1 их порядковый номер.
Заранее спасибо ))))

Решение задачи: «Сравнить два столбца на разных листах в Excel при помощи VBA»

textual
Листинг программы
<font color="blue">Option</font> <font color="blue">Explicit</font>

<font color="blue">Sub</font> tt()
<font color="blue">Dim</font> i <font color="blue">As</font> <font color="blue">Long</font>
<font color="blue">Dim</font> x <font color="blue">As</font> Range

<font color="blue">With</font> Worksheets(<font color="darkblue"><b>1</b></font>).Columns(<font color="darkblue"><b>1</b></font>)
    <font color="blue">For</font> i = <font color="darkblue"><b>1</b></font> <font color="blue">To</font> .Cells(.Rows.Count).<font color="blue">End</font>(xlUp).Row
        <font color="blue">Set</font> x = Worksheets(<font color="darkblue"><b>2</b></font>).Columns(<font color="darkblue"><b>1</b></font>).Find(.Cells(i), LookIn:=xlValues, lookat:=xlPart)
        <font color="blue">If</font> x <font color="blue">Is</font> <font color="blue">Nothing</font> <font color="blue">Then</font>
                .Cells(i).Offset(, <font color="darkblue"><b>1</b></font>) = <font color="teal">"ненайдено"</font>
        <font color="blue">Else</font>
                .Cells(i).Offset(, <font color="darkblue"><b>1</b></font>) = Worksheets(<font color="darkblue"><b>2</b></font>).Cells(x.Row, <font color="darkblue"><b>2</b></font>).Value
        <font color="blue">End</font> <font color="blue">If</font>
    <font color="blue">Next</font> i
<font color="blue">End</font> <font color="blue">With</font>

<font color="blue">End</font> <font color="blue">Sub</font>

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

9   голосов , оценка 4.333 из 5
Похожие ответы