Домашняя страница Undo Do New Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/Замена значений ячейки при несовпадении - Мир MS Excel

Регистрация · Логин: · Пароль: · · Забыли пароль?
Страница 1 из 11
Модератор форума: _Boroda_, Pelena, Manyasha, SLAVICK 
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Замена значений ячейки при несовпадении (Формулы/Formulas)
Замена значений ячейки при несовпадении
Dizeloid Дата: Пятница, 15.07.2016, 13:57 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Есть две колонки со значениями:
В В
В В
В A
В С
В С
В
В В
В В
В
В А
В В
В В
В В
Подскажите, как сделать что бы при совпадении значений в ячейках ничего не происходило, а при несовпадении происходила замена значения первой ячейки на значение взятое из второй? Но одно условие, если во второй ячейке отсутствует значение, то значение первой не меняется. Буду рад любой помощи...
К сообщению приложен файл: ABCD.xlsx(23Kb)
 
Ответить
СообщениеЕсть две колонки со значениями:
В В
В В
В A
В С
В С
В
В В
В В
В
В А
В В
В В
В В
Подскажите, как сделать что бы при совпадении значений в ячейках ничего не происходило, а при несовпадении происходила замена значения первой ячейки на значение взятое из второй? Но одно условие, если во второй ячейке отсутствует значение, то значение первой не меняется. Буду рад любой помощи...

Автор - Dizeloid
Дата добавления - 15.07.2016 в 13:57
Pelena Дата: Пятница, 15.07.2016, 14:37 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 9846
Репутация: 2252 ±
Замечаний: 0% ±

Excel 2010 & Mac Excel 2011
Код
=ЕСЛИ(ИЛИ(A1=B1;B1="");A1;B1)


"Черт возьми, Холмс! Но как??!!"
ЯД 41001765434816
 
Ответить
Сообщение
Код
=ЕСЛИ(ИЛИ(A1=B1;B1="");A1;B1)

Автор - Pelena
Дата добавления - 15.07.2016 в 14:37
_Boroda_ Дата: Пятница, 15.07.2016, 14:37 | Сообщение № 3
Группа: Модераторы
Ранг: Экселист
Сообщений: 9348
Репутация: 3922 ±
Замечаний: 0% ±

2003; 2007; 2010; 2013 RUS
Можно в соседний столбец (пусть это будет столбец С) формулу
Код
=ЕСЛИ(B1="";A1;B1)

Если результат нужен именно в столбце А, то столбец С копируете и вставляете в А спецвставка - Значение
К сообщению приложен файл: ABCD_1.xlsx(30Kb)


Скажи мне, кудесник, любимец ба’гов...
Платная помощь:
Boroda_Excel@mail.ru
Яндекс-деньги: 41001632713405 | Webmoney: R289877159277; Z102172301748; E177867141995
 
Ответить
СообщениеМожно в соседний столбец (пусть это будет столбец С) формулу
Код
=ЕСЛИ(B1="";A1;B1)

Если результат нужен именно в столбце А, то столбец С копируете и вставляете в А спецвставка - Значение

Автор - _Boroda_
Дата добавления - 15.07.2016 в 14:37
abtextime Дата: Пятница, 15.07.2016, 14:42 | Сообщение № 4
Группа: Проверенные
Ранг: Обитатель
Сообщений: 427
Репутация: 60 ±
Замечаний: 0% ±

Excel 2010
Так что ли? Или надо прямо в столбце?(тогда макросом надо, а у Вас в теме Формулы)
Код
=ЕСЛИ(И(A1<>B1;B1<>"");B1;A1)
К сообщению приложен файл: 2533921.xlsx(24Kb)
 
Ответить
СообщениеТак что ли? Или надо прямо в столбце?(тогда макросом надо, а у Вас в теме Формулы)
Код
=ЕСЛИ(И(A1<>B1;B1<>"");B1;A1)

Автор - abtextime
Дата добавления - 15.07.2016 в 14:42
sv2014 Дата: Пятница, 15.07.2016, 14:43 | Сообщение № 5
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 156
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
Dizeloid, еще вариант макроса,кнопки test и повтор(все буквы английские),добавлю,что
автоматически меняет мой файл на другой,проверьте,чтобы у Вас была одинаковая раскладка букв: английская или(здесь исключающие или) русская в столбцах.

[vba]
Код
Sub test()
    Dim z, i&: z = Range("A1:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
     For i = 1 To UBound(z)
       If Not IsEmpty(z(i, 2)) And z(i, 1) <> z(i, 2) Then z(i, 1) = z(i, 2)
     Next
     Range("A1").Resize(UBound(z), UBound(z, 2)) = z
End Sub
[/vba]
К сообщению приложен файл: zzzzz15.rar(17Kb)


Сообщение отредактировал sv2014 - Пятница, 15.07.2016, 18:21
 
Ответить
СообщениеDizeloid, еще вариант макроса,кнопки test и повтор(все буквы английские),добавлю,что
автоматически меняет мой файл на другой,проверьте,чтобы у Вас была одинаковая раскладка букв: английская или(здесь исключающие или) русская в столбцах.

[vba]
Код
Sub test()
    Dim z, i&: z = Range("A1:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
     For i = 1 To UBound(z)
       If Not IsEmpty(z(i, 2)) And z(i, 1) <> z(i, 2) Then z(i, 1) = z(i, 2)
     Next
     Range("A1").Resize(UBound(z), UBound(z, 2)) = z
End Sub
[/vba]

Автор - sv2014
Дата добавления - 15.07.2016 в 14:43
Rioran Дата: Пятница, 15.07.2016, 14:44 | Сообщение № 6
Группа: Авторы
Ранг: Ветеран
Сообщений: 886
Репутация: 281 ±
Замечаний: 0% ±

Excel 2013
Dizeloid, здравствуйте.

Задачу, как Вы её описали, я бы предложил решить макросом. Например, в файле ниже разрешите исполнение макросов и нажмите на кнопку для проверки результата.

Код вложенной программы:

[vba]
Код
Sub Special_Check()
    Dim xRow&, X, i&
    xRow = ActiveSheet.UsedRange.Rows.Count
    X = Range("A1:B" & xRow)
    For i = 1 To xRow
        If (X(i, 2) <> "") And (X(i, 1) <> X(i, 2)) Then X(i, 1) = X(i, 2)
    Next i
    Range("A1:B" & xRow) = X
End Sub
[/vba]
К сообщению приложен файл: Rio_ABCD.xlsm(32Kb)


Роман, Москва, voronov_rv@mail.ru
Яндекс-Деньги: 41001312674279
 
Ответить
СообщениеDizeloid, здравствуйте.

Задачу, как Вы её описали, я бы предложил решить макросом. Например, в файле ниже разрешите исполнение макросов и нажмите на кнопку для проверки результата.

Код вложенной программы:

[vba]
Код
Sub Special_Check()
    Dim xRow&, X, i&
    xRow = ActiveSheet.UsedRange.Rows.Count
    X = Range("A1:B" & xRow)
    For i = 1 To xRow
        If (X(i, 2) <> "") And (X(i, 1) <> X(i, 2)) Then X(i, 1) = X(i, 2)
    Next i
    Range("A1:B" & xRow) = X
End Sub
[/vba]

Автор - Rioran
Дата добавления - 15.07.2016 в 14:44
Dizeloid Дата: Пятница, 15.07.2016, 14:44 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Так что ли? Или надо прямо в столбце?(тогда макросом надо, а у Вас в теме Формулы)


Да, так как вы сделали самое оно)) Плюсую)
 
Ответить
Сообщение
Так что ли? Или надо прямо в столбце?(тогда макросом надо, а у Вас в теме Формулы)


Да, так как вы сделали самое оно)) Плюсую)

Автор - Dizeloid
Дата добавления - 15.07.2016 в 14:44
Dizeloid Дата: Пятница, 15.07.2016, 15:36 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 19
Репутация: 0 ±
Замечаний: 0% ±

Excel 2010
Еще вопрос в догонку, значения те же
В В
В В
В A
В С
В С
В
В В
В В
В
В А
В В
В В
В В

Если значения в первой и второй ячейках не совпадают - как выделить ячейки цветом? С меню плюс)
 
Ответить
СообщениеЕще вопрос в догонку, значения те же
В В
В В
В A
В С
В С
В
В В
В В
В
В А
В В
В В
В В

Если значения в первой и второй ячейках не совпадают - как выделить ячейки цветом? С меню плюс)

Автор - Dizeloid
Дата добавления - 15.07.2016 в 15:36
китин Дата: Пятница, 15.07.2016, 16:02 | Сообщение № 9
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3413
Репутация: 543 ±
Замечаний: 0% ±

Excel 2007;Excel 2010
УФ вам в помощь
[p.s.]у вас в столбе А англицкие буквы а в В русские
К сообщению приложен файл: ABCD-2.xlsx(37Kb)


Не судите строго:я пытаюсь научиться
ЯД 41001877306852/WM R249698041931; Z239672726538


Сообщение отредактировал китин - Пятница, 15.07.2016, 16:04
 
Ответить
СообщениеУФ вам в помощь
[p.s.]у вас в столбе А англицкие буквы а в В русские

Автор - китин
Дата добавления - 15.07.2016 в 16:02
pabchek Дата: Пятница, 15.07.2016, 16:48 | Сообщение № 10
Группа: Проверенные
Ранг: Ветеран
Сообщений: 645
Репутация: 145 ±
Замечаний: 0% ±

Excel 2007
Если все же надо чтобы не закрашивались ячейки в колонке В где пусто, то формула УФ
Код
=(A1<>B1)-(B1="")


[offtop]И да.. Аццкие буквы))
англицкие буквы
[/offtop]
К сообщению приложен файл: 3335985.xlsx(22Kb)


"Учиться, учиться и еще раз учиться!"
WM: R399923528092


Сообщение отредактировал pabchek - Пятница, 15.07.2016, 16:51
 
Ответить
СообщениеЕсли все же надо чтобы не закрашивались ячейки в колонке В где пусто, то формула УФ
Код
=(A1<>B1)-(B1="")


[offtop]И да.. Аццкие буквы))
англицкие буквы
[/offtop]

Автор - pabchek
Дата добавления - 15.07.2016 в 16:48
sv2014 Дата: Пятница, 15.07.2016, 18:14 | Сообщение № 11
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 156
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
Dizeloid, добрый вечер,вариант для сообщения 8 кнопки test1 и убрать_цвет

[vba]
Код
Sub test1()
    Dim z, i&: z = Range("A1:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
     For i = 1 To UBound(z)
       If Not IsEmpty(z(i, 2)) And z(i, 1) <> z(i, 2) Then Range("A" & i & ":B" & i).Font.Color = -16776961
     Next
End Sub
[/vba]
К сообщению приложен файл: example_16_07_2.xls(38Kb)
 
Ответить
СообщениеDizeloid, добрый вечер,вариант для сообщения 8 кнопки test1 и убрать_цвет

[vba]
Код
Sub test1()
    Dim z, i&: z = Range("A1:B" & Range("A" & Rows.Count).End(xlUp).Row).Value
     For i = 1 To UBound(z)
       If Not IsEmpty(z(i, 2)) And z(i, 1) <> z(i, 2) Then Range("A" & i & ":B" & i).Font.Color = -16776961
     Next
End Sub
[/vba]

Автор - sv2014
Дата добавления - 15.07.2016 в 18:14
sv2014 Дата: Пятница, 15.07.2016, 18:23 | Сообщение № 12
Группа: Проверенные
Ранг: Форумчанин
Сообщений: 156
Репутация: 37 ±
Замечаний: 0% ±

Excel 2013
Dizeloid, добавил макрос убрать цвет

[vba]
Код
Sub убрать_цвет()
      Dim i1& : i1 = Range("A" & Rows.Count).End(xlUp).Row
     Range("A1:B" & i1).Font.ColorIndex = xlAutomatic
End Sub
[/vba]


Сообщение отредактировал sv2014 - Пятница, 15.07.2016, 18:52
 
Ответить
СообщениеDizeloid, добавил макрос убрать цвет

[vba]
Код
Sub убрать_цвет()
      Dim i1& : i1 = Range("A" & Rows.Count).End(xlUp).Row
     Range("A1:B" & i1).Font.ColorIndex = xlAutomatic
End Sub
[/vba]

Автор - sv2014
Дата добавления - 15.07.2016 в 18:23
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Замена значений ячейки при несовпадении (Формулы/Formulas)
Страница 1 из 11
Поиск:

Яндекс цитирования
© 2010-2016 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!