Я довольно новичок в программировании на Excel и VBA. Хотя у меня есть опыт как в Visual Basic, так и в PHP. Таким образом, понимание основ существует.Excel VBA - изменение цвета ячеек на основе события из других листов
Ничего себе, это трудно объяснить в хорошем смысле ... Это может быть не лучший способ решить эту проблему, но именно так я решил это прямо сейчас.
Всего 3 листа. sheet1 - резюме других листов. Sheet2, некоторые данные и пользовательский ввод. Sheet3 - Данные.
Пользователь вводит длину стального стержня в sheet2. Пользователь также добавляет другие значения, которые добавляют вес на стальной стержень. в листе 1 рассчитывается сводка нагрузок. одна из ячеек показывает только нагрузку на панель. Лист3 имеет максимальную информацию о загрузке пр. длина стального стержня. Я хочу, чтобы итоговая ячейка в листе1 была красной от значения больше максимальной загрузки в sheet3.
Так что я хочу, чтобы макрос запускался каждый раз, когда ячейка в листе1 менялась при вводе пользователем в sheet2. поиск макросов и перекрестные проверки значений и изменение цвета ячейки в листе1.
Что такое хороший способ решения этого вопроса?
Чтобы сделать это несколько сложнее, пользователь может выбирать из 4 отдельных стальных стержней с различными данными погрузки.
, чтобы настроить тест, который я сделал на тестовом листе, но я не могу заставить макрос работать по какой-то причине.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range("E4")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
If Range("E4").Value > Range("E14").Value Then
Range("E4").Interior.ColorIndex = 37
End If
End If
End Sub
Я думаю, что макрос будет работать до тех пор, как вы получили изменение значения ячейки в первой рабочей таблице (резюме) –
Вы должны попробовать ** Условное форматирование **. Быстрее, дешевле в ресурсах и проще модифицировать позже для других пользователей. – vacip