Здравствуйте, я пытаюсь найти лучший способ сделать это, и, к сожалению, шаги, предпринятые мной, не дали мне результатов, на которые я надеялся. Я хотел бы создать событие, которое выделяет ячейку, но только если оно расположено в определенном диапазоне. Теперь сложная часть состоит в том, что диапазон может меняться в зависимости от информации, отображаемой с помощью кнопки, которую я создал. Например, у меня есть A1, A2, и после нажатия кнопки диапазон может измениться на A1..A5. Я не хочу, чтобы ячейка A6, например, была подсвечена, поскольку здесь нет информации или информация там не имеет значения. Вот то, что я сделал до сих пор, но в настоящее время получаю определенную или определенную объектом определенную ошибку для функции INSTR внутри цикла. Я создал следующий в классе для этого события:Получить значение для события
Private Sub m_wb_SheetChange(ByVal Sh As Object, ByVal Target As Range)
Dim i As Integer
Dim startpos As Integer
Dim Endpos As Integer
For i = 0 To 50
If (InStr(m_wb.Sheets("sheet1").Cells(i, 5).Value, "multiplier") > 0) Then startpos = i
If (InStr(m_wb.Sheets("sheet1").Cells(i, 5).Value, "total") > 0) Then Endpos = i
Next i
If Sh.name = "Sheet1" And (Target.Column = 7 Or Target.Column = 2 Or Target.Column = 3) And Not IsEmpty(m_wb.Sheets("sheet1").Cells(3, 1).Value) And Target.Row > startpos - 1 and Target.Row < Endpos Then Target.Interior.Color = vbYellow
End Sub
Значение строки не может быть '0' и, следовательно, вы получаете эту ошибку –
@SiddharthRout Удивительно, что было легко, спасибо за вашу помощь! – paul590