Форум программистов, компьютерный форум, киберфорум
VBA
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
5 / 5 / 0
Регистрация: 27.04.2015
Сообщений: 172

Сравнение диапазонов и заливка совпавших записей

02.06.2015, 07:56. Показов 1898. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Проблема в следующем:
На листе1 книги имеется несколько блоков с данными (Дата, фамилия, и должность, например: Лист1 A1:A3) расположенные в столбцах. Лист2 "Верно" и Лист3 "Неверно" заполняется посредством юзерформы (в примере отсутствует). На них также указывается «Дата, фамилия, должность» только расположены эти данные в строку (например: Лист 2 A1:A3). Мне надо сделать, чтобы при заполнение листов 2,3 происходило сравнение данных из блоков Лист1 с данными в строках Листа2 «Верно» и листа3 «Не верно». Если совпало с Лист2 «верно» заливка блока Лист 1 становится – красной, если совпало с Лист 3 «Неверно» - зеленой.
Подскажите, пожалуйста, как сделать. В VBA я совсем еще новичок. Спасибо.
Вложения
Тип файла: zip Пример заливки.zip (19.5 Кб, 17 просмотров)
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
02.06.2015, 07:56
Ответы с готовыми решениями:

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

Сравнение двух столбцов листа и выведение совпавших данных
Доброго времени суток. Возникла такая потребность: имеется лист со столбцами A и B. В столбце A находятся данные, которые нужно...

Сравнение 2-х Книг по первому столбцу и вывод совпавших значений( всю строку) в 3-ю книгу
Всем Добрый день! Помогите пожалуйста с формулой или может здесь макрос нужен!? Имеется. 1 книга. Есть номера домов( некий перечень),...

3
15155 / 6428 / 1731
Регистрация: 24.09.2011
Сообщений: 9,999
02.06.2015, 09:32
Visual Basic
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
Sub bb()
Dim v(), i&, j&, cl As New Collection
  AddData cl, "Верно", vbGreen
  AddData cl, "не верно", vbRed
  With Sheets("Лист1").UsedRange
    .Interior.ColorIndex = xlColorIndexNone
    v = .Value2
    On Error Resume Next
    For i = 1 To UBound(v) Step 4
      For j = 1 To UBound(v, 2)
        .Cells(i, j).Resize(3).Interior.Color = cl(v(i, j) & v(i + 1, j) & v(i + 2, j))
      Next
    Next
  End With
End Sub
 
Private Sub AddData(col As Collection, SheetName As String, clr)
  Dim v(), i&
  v = Sheets(SheetName).UsedRange.Value2
  For i = 1 To UBound(v)
    col.Add clr, v(i, 1) & v(i, 2) & v(i, 3)
  Next
End Sub
0
5 / 5 / 0
Регистрация: 27.04.2015
Сообщений: 172
02.06.2015, 12:58  [ТС]
Дополню, что данные на листах 2 (Верно) и 3 "Неверно" могут оказаться как в первой строке, так и в сотой. В любой.
0
5 / 5 / 0
Регистрация: 27.04.2015
Сообщений: 172
03.06.2015, 03:30  [ТС]
Спасибо, пытаюсь адаптировать по свой файл, но возникли некоторые проблемы:

В оригинальном файле (не в примере) Поле с фамилиями, должностями и датами начинается с ячейки B4 т.е первый блок- Лист 1, B4:В6, второй блок - С4:С6 и т.д.. На листе 1 "Верно" и Листе 2 "Не верно" заполнение начинается со строки B8. Причем перед внесенными данными с Датой, фамилией и должностью в ячейке A8 содержится порядковый номер, который вносится автоматически с юзерформы при каждом заполнении таблицы.
Строки Листа "Верно" и "Не верно" до строки 8 тоже содержат текст (это шапка таблицы). При попытке перенести к себе, выделяет строку:
Visual Basic
1
  col.Add clr, v(i, 1) & v(i, 2) & v(i, 3)

Если в примере прописать текст в эти свободные строки и столбец то также выделяет эту строку
или вообще перестает работать.

Подскажите, пожалуйста, как подправить?

Пример в приложении. Спасибо.
Вложения
Тип файла: zip Пример заливки.zip (26.1 Кб, 14 просмотров)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
03.06.2015, 03:30
Помогаю со студенческими работами здесь

Сравнение 2-х Книг по первому столбцу и вывод совпавших значений( всю строку) в 3-ю книгу - MS Excel
Всем Добрый день! Помогите пожалуйста с формулой или может здесь макрос нужен!? Имеется. 1 книга. Есть номера домов( некий перечень),...

Сравнение диапазонов
Ребят, в коде разбираться не будите, сам запутался, объясню что надо: умная таблица с вертикальным расположением элементов, обычная...

Сравнение диапазонов ячеек
Здравствуйте! Простая задача сравнить два диапазона ячеек(A1:A3 и C1:C5), если в одном диапазоне есть значения, которых нет в другом...

Сравнение диапазонов чисел
Здравствуйте форумчане. Не знаю как назвать эту задачу. И даже не знаю как всё это описать. :) Поэтому прикрепляю файл. В нём постарался...

Сравнение двух диапазонов на несовпадение
Подскажите пожалуйста, как организовать поиск на несовпадение? На первом листе таблицу надо сравнить с таблицей на втором листе. Если...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru