Ячейки с разным фоном в VBA

У меня есть файл excel, интегрированный с моей базой данных SQL. При открытии файл excel получает данные из базы данных и вставляет в мой файл excel. Я написал этот простой код, который меняет цвет ячеек, когда одна ячейка меняет свое значение:

Private Sub Worksheet_Change(ByVal Target As Range) Target.Interior.ColorIndex = 6 End Sub 

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

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

сначала найдите диапазон данных, используя xldown и xltoright

Затем запустите цикл for для проверки каждой ячейки

Внутри использования forloop, если условие для проверки цвета ячейки

Если условие цвета ячейки удовлетворяет, затем запустите действие u want else endif и перейдите к следующим ячейкам, используя для цикла.

Вот пример, чтобы найти ячейки с одним цветом

Измените, как вам нужно.

 'Select the color by name 'vbBlack, vbBlue, vbGreen, vbCyan, 'vbRed, vbMagenta, vbYellow, vbWhite 'or if you prefer, you can use the RGB function 'to specify a color 'Colr = RGB(0, 112, 192) 

Пример поиска желтых ячеек

 Sub Test() Dim Cel As Range Dim Colr As Long Dim Colred As Range Colr = vbYellow Set Colred = Nothing '// select cells to search or set range For Each Cel In Selection If Cel.Interior.Color = Colr Then If Colred Is Nothing Then Set Colred = Cel Else Set Colred = Union(Colred, Cel) End If End If Next If Colred Is Nothing Then MsgBox "No cells match that color" Else Colred.Select MsgBox "Selected cells match the color:" & _ vbCrLf & Colred.Address End If Set Cel = Nothing Set Colred = Nothing End Sub 
Interesting Posts

Экспорт GridView в Excel с удалением некоторых выбранных столбцов

Excel / VBA workbook.activesheet возвращает неверный лист

Правильный синтаксис для создания сводной таблицы в C # Interop.Excel?

Как запустить функцию VBS с параметрами из Java и присвоить результат переменной

Лучшее решение для использования EJB из Excel

Запись в файл Excel с помощью OLEDB

Рабочий лист Excel Изменение поведения события с помощью команды отмены

Рассчитайте, сколько раз определенное слово появляется в одном столбце в течение недели, которое подпадает под

Пересчитать при изменении фона ячейки

Как избежать листа, когда мы запускаем макрос, объединяет данные из многих листов в один лист

VBA Несогласованная ошибка времени выполнения '91'

Фильтровать и перемещать данные на другой лист

Excel не завершает макрос после открытия другой рабочей книги

Excel VBA – журналы сеанса анализа

POI: API для проверки того, ссылается ли строка по формуле

Давайте будем гением компьютера.