Добрый день Помощи прошу. В столбце 2 некоторые ячейки пустые и встречаются от 4 до нижней не пустой строки. В столбце 3 идут только цифры (в общем формате ячеек - пока не разбирался чем это чревато). Если в столбце 2 встречаем пустую ячейку, то нужно суммировать значение из столбца 3 со значением из нижней ячейки, если в столбце 2 также нижняя ячейка пустая и так до того момента пока встретим в столбце 2 не пустую ячейку. Полученную сумму нужно сверить со значением верхней ячейки столбца 3, и если она не совпадает, то значения закрашиваем фоном. Т.е. например: ячейки 5, 2 и 6, 2 пустые, и поэтому значения ячеек 5, 3 и 6, 3 суммируем, и полученный результат сравниваем со значением ячейки 4, 3. В случае не совпадения значения в столбце 3 заливаем желтым.
Добрый день Помощи прошу. В столбце 2 некоторые ячейки пустые и встречаются от 4 до нижней не пустой строки. В столбце 3 идут только цифры (в общем формате ячеек - пока не разбирался чем это чревато). Если в столбце 2 встречаем пустую ячейку, то нужно суммировать значение из столбца 3 со значением из нижней ячейки, если в столбце 2 также нижняя ячейка пустая и так до того момента пока встретим в столбце 2 не пустую ячейку. Полученную сумму нужно сверить со значением верхней ячейки столбца 3, и если она не совпадает, то значения закрашиваем фоном. Т.е. например: ячейки 5, 2 и 6, 2 пустые, и поэтому значения ячеек 5, 3 и 6, 3 суммируем, и полученный результат сравниваем со значением ячейки 4, 3. В случае не совпадения значения в столбце 3 заливаем желтым.timo64uk
Sub u_91()
Application.ScreenUpdating = False
a = Range("c3").End(xlDown).Row
b = Application.CountA(Range("b4:b" & a))
d = 4 For c = 1To b
e = Application.Match("*", Range("b" & d & ":b" & a), 0)
d = d + e
f = Application.Match("*", Range("b" & d & ":b" & a), 0)
g = d - 1 If c <> b Then
h = d + f - 2 Else
h = a EndIf If g <> h Then
i = Range("c" & g).Value
j = Application.Sum(Range("c" & g + 1 & ":c" & h)) If i <> j Then Range("c" & g + 1 & ":c" & h).Interior.Color = 65535 EndIf Next EndSub
Sub u_91()
Application.ScreenUpdating = False
a = Range("c3").End(xlDown).Row
b = Application.CountA(Range("b4:b" & a))
d = 4 For c = 1To b
e = Application.Match("*", Range("b" & d & ":b" & a), 0)
d = d + e
f = Application.Match("*", Range("b" & d & ":b" & a), 0)
g = d - 1 If c <> b Then
h = d + f - 2 Else
h = a EndIf If g <> h Then
i = Range("c" & g).Value
j = Application.Sum(Range("c" & g + 1 & ":c" & h)) If i <> j Then Range("c" & g + 1 & ":c" & h).Interior.Color = 65535 EndIf Next EndSub
Спасибо большое. Очень помогли Я немного начал сам, но тут же закончил.
Dim x AsInteger
LastRow = Cells(Rows.Count, "C").End(xlUp).row For x = 4To LastRow If Range("B" & x) = ""And Range("C" & x).Value Like"*"And Range("B" & x + 1) = ""Then
para = Range("C" & x - 1) ' нашёл значение с которым сравнивать подмассив EndIf If Range("B" & x) = ""And Range("C" & x).Value Like"*"And Range("B" & x + 1) = ""Then
ceta = Range("C" & x) + Range("C" & x + 1) ' нашёл подмассив для суммирования EndIf If para <> ceta Then
Range("C" & x - 1).Interior.Color = 13431551 EndIf Next
Спасибо большое. Очень помогли Я немного начал сам, но тут же закончил.
Dim x AsInteger
LastRow = Cells(Rows.Count, "C").End(xlUp).row For x = 4To LastRow If Range("B" & x) = ""And Range("C" & x).Value Like"*"And Range("B" & x + 1) = ""Then
para = Range("C" & x - 1) ' нашёл значение с которым сравнивать подмассив EndIf If Range("B" & x) = ""And Range("C" & x).Value Like"*"And Range("B" & x + 1) = ""Then
ceta = Range("C" & x) + Range("C" & x + 1) ' нашёл подмассив для суммирования EndIf If para <> ceta Then
Range("C" & x - 1).Interior.Color = 13431551 EndIf Next