Если ячейка соответствует любым другим в диапазоне, скопируйте содержимое на лист «результатов» - PullRequest
0 голосов
/ 27 февраля 2012

Я хочу проверить, соответствует ли текст в A3 тексту в любых других ячейках в диапазоне A5: A50.

Если это так, я хочу скопировать содержимое ячейки Y (с тем же номером строки, что и ячейка, которая соответствует A3) в следующую свободную ячейку в столбце A на листе с именем results. Также необходимо сохранить цвет ячейки при копировании ячейки Y.

Все, что я мог получить, это положить это в клетку назначения

= VLOOKUP(Sheet1!A3, Sheet1$A$5:$Y50, 25, TRUE) 

Это не работает, так как мне нужно запустить его на нескольких листах с разными именами.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2012

Вы можете использовать динамическую технику 3d-Vlookup, перечислив имена листов для поиска в списке где-нибудь, назвав этот диапазон ячеек MySheets , а затем используйте такую ​​конструкцию:

=VLOOKUP(A3, INDIRECT("'" & INDEX(MySheets, MATCH(1, COUNTIF(INDIRECT("'" & MySheets &"'!A1:A50"), A3), 0)) & "'!A:B"), 2, 0)

На моем сайте есть образец рабочей книги , демонстрирующий это.

0 голосов
/ 27 февраля 2012
with activesheet
   for each c in .range("A5:A50").cells
      if c.value = .range("A3").value then
         c.offset(0,24).copy _
              worksheets("results").cells(rows.count,1).end(xlup).offset(1,0) 
      end if
   next c
end with
...