Если вы хотите скопировать определенную отформатированную ячейку или цветные ячейки из одного столбца в следующий столбец, эта статья для вас. В этой статье мы узнаем, как копировать цветные ячейки с помощью кода VBA.

Ниже приведен снимок данных, которые у нас есть, т.е. столбец A содержит данные с несколькими ячейками желтого цвета.

Для извлечения данных, выделенных только желтым цветом; нам нужно создать UDF, чтобы отображать цветные ячейки только в столбце B

img1

  • Чтобы создать функцию, определяемую пользователем, мы выполним следующие шаги:

Щелкните вкладку «Разработчик». В группе «Код» выберите Visual Basic

img2

  • Мы должны скопировать приведенный ниже код в стандартный модуль

Функция IsYellow (ByRef r As Range)

Если r.Interior.ColorIndex = 6, то

IsYellow = r.Value

Остальное

IsYellow = vbNullString

Конец Если

Конечная функция

img3

===

В ячейке B1 формула будет иметь вид * = IsYellow (A1)

img4

Приведенный выше код специально соответствует цвету # 6, который предназначен только для желтого цвета. Следовательно, udf будет извлекать только значения, содержащие цвет # 6.

Если мы хотим извлечь ячейки красного цвета, нам нужно проверить обозначенный номер цвета и просто заменить его на номер желтого цвета.

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

image 4