Страницы: 1
RSS
VBA поиск по значению и замена по условию
 
Добрый день.
Подскажите пожалуйста. Дано значение 3,6/1,78 в ячейке, справо значение 7,2 . Нужно заменить 7,2 на 7,2/1,45.
Самым простым до чего додумался это найти 3,6/1,78 сделать сдвиг вправо и там заменить значение на 7,2/1,45, но тогда меняет не там где нужно. Просто заменять 7,2 на 7,2/1,45 нельзя из-за того, что в данном диапазоне есть просто 7,2 которые не меняются   . По форумам и книгам только додумался до конструкции:
Код
For Each c In [E20:X200]
    If c.Value Like "3,6/1,78" Then
        c.Offset(0, 1).Value = "7,2/1,45"

Но тут получается, что меняет и там где не надо. Не знаю как реализовать поиск 3,6/1,78 и при условии, что в соседней ячейке 7,2, заменить 7,2 на 7,2/1,45
Изменено: Андрей Юрьев - 07.02.2016 23:47:25
 
А где не надо?
Если ищем полное совпадение, не нужен Like
Возможно, забыли добавить проверку:
Код
If c.Value="3,6/1,78" Then
     If c.Offset(0, 1).Value="7,2" Then
        c.Offset(0, 1).Value = "7,2/1,45"


Покажите пример в файле
 
У Вас одна проверка есть - добавьте ещё одну:
Код
if c.Offset(0, 1).Value = 7,2 then
 
Спасибо за помощь. В итоге этот код полностью решает мою проблему:
Код
If c.Value = "3,6/1,78" Then
     If c.Offset(0, 1).Value = "7,2" Then
        c.Offset(0, 1).Value = "7,2/1,45"
Страницы: 1
Наверх