Ищем совпадение и копируем из соседней ячейки

Весь MS Office, программирование на Visual Basic for Applications и MS VB

Модератор: Naeel Maqsudov

Ответить
vadim245
Сообщения: 100
Зарегистрирован: 11 май 2007, 15:46

Есть Лист1 и Лист2
На Лист1 В столбце "А" уникальные индексы (KM12/RV23/RV45/ и тд)
На Лист2 В столбце "К" уникальные индексы (КМ10/KM12/RV23/RV30/ и тд)
Берем содержимое ячейки "А1" первого листа - там индекс. Если на листе 2 есть в столбце "С" такой же точно индекс, то на первый лист копируем в соседнюю ячейку значение из ячейки, которая соседствует с найденным индек
Вложения
HelpME.zip
(3.77 КБ) 37 скачиваний
airyashov
Сообщения: 441
Зарегистрирован: 02 ноя 2007, 10:31

Код: Выделить всё

Sub MyCopy()
  Dim oRange1 As Range
  Dim oRange2 As Range
  Dim oWh1 As Worksheet
  Dim oWh2 As Worksheet
 
  Set oWh1 = Worksheets("Лист1")
  Set oWh2 = Worksheets("Лист2")
 
  For i = 1 To oWh1.UsedRange.Rows.Count
    Set oRange1 = oWh1.Cells(i, 1)
    f = False
    For j = 1 To oWh2.UsedRange.Rows.Count
        Set oRange2 = oWh2.Cells(j, 3)
        If oRange1.Value = oRange2.Value Then
            oWh1.Cells(i, 2).Value = oWh2.Cells(j, 4).Value
            f = True
            Exit For
        End If
    Next j
    If Not (f) Then
        oWh1.Cells(i, 2).Value = "НЕ НАШЕЛ ЗНАЧЕНИЕ"
    End If
  Next i
End Sub
icq:3(один)7748666
mail:airyashov( а)inbox.ru
SAS888
Сообщения: 156
Зарегистрирован: 16 янв 2008, 08:28

Можно и формулой (см. вложение).
Ответить