Как заполнить ячейку данными из отдельной таблицы в Excel? - PullRequest
0 голосов
/ 26 сентября 2018

Я пытаюсь сопоставить 2 столбца в двух отдельных листах и ​​затем заполнить данные из листа 2 в листе 1.

Мне нужно сопоставить столбец A (рабочий лист 2) со столбцом D (рабочий лист 1).После сопоставления мне нужно заполнить столбец F (рабочий лист 1) данными из столбца B (рабочий лист 2).После заполнения данных я также хотел бы изменить цвет столбца F (рабочий лист 1) на основе имеющихся данных. Рабочий лист 1 Рабочий лист 2

Ответы [ 2 ]

0 голосов
/ 26 сентября 2018

Требуется больше информации, чтобы предоставить вам точный код, но вот хорошее начало.

'Предполагая, что на каждом листе 10 строк

dim i as integer
dim j as integer

for i = 1 to 10
    for j = 1 to 10 
        if sheet1.cells(i,4).value = sheet2.cells(j,1).value then
            sheet1.cells(i,6).value = sheet1.cells(j,2).value
            sheet1.cells(i,6).interior.color = vbyellow
        end if
    next j
next i

можно также управлять цветомс помощью функции rgb просто замените vbyellow в приведенном выше коде:

Например, rgb (255 204 255) будет светло-розовым

0 голосов
/ 26 сентября 2018

Поместите это в F2 на листе 1, обновите имя листа Sheet2, указав имя второго листа, затем скопируйте:

=VLOOKUP($D2,Sheet2!$A:$B,2,FALSE)

Затем вы можете применить условное форматирование к столбцу F на листе.1.

Если у вас могут быть значения на листе 1, которых нет на листе 2, это обработает ошибку:

=IFERROR(VLOOKUP($D2,Sheet2!$A:$B,2,FALSE),"Not Found!")

[Обновлено для дополнительного вопроса о охвате черезрабочие книги]

Для другой открытой рабочей книги используйте следующее и замените [Book2] на путь второй рабочей книги или имя открытой рабочей книги:

=IFERROR(VLOOKUP($D2,[Book2]Sheet2!$A:$B,2,FALSE),"Not Found!")

Также обратите вниманиеExcel автоматически создаст все ссылки, если вы выберете их вручную при построении формулы в строке формул: Обзор формул Excel в MSDN

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...