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

Вход

Регистрация

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

 

= Мир MS Excel/Сравнение строк и подсветка отличий - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Сравнение строк и подсветка отличий (Формулы/Formulas)
Сравнение строк и подсветка отличий
greenХХ Дата: Понедельник, 23.03.2020, 15:22 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Добрый день!
Подскажите пожалуйста, имеется файл спецификации в котором столбец Обозначение, и второй столбец Обозначение по счету.
Необходимо сравнивать между собой наименований вводимых строк (в идеале должны быть одинаковы), в случае различий подсветка символов или всего наименования
К сообщению приложен файл: 1228506.xlsx (10.7 Kb)
 
Ответить
СообщениеДобрый день!
Подскажите пожалуйста, имеется файл спецификации в котором столбец Обозначение, и второй столбец Обозначение по счету.
Необходимо сравнивать между собой наименований вводимых строк (в идеале должны быть одинаковы), в случае различий подсветка символов или всего наименования

Автор - greenХХ
Дата добавления - 23.03.2020 в 15:22
YouGreed Дата: Понедельник, 23.03.2020, 15:55 | Сообщение № 2
Группа: Проверенные
Ранг: Ветеран
Сообщений: 589
Репутация: 123 ±
Замечаний: 0% ±

Excel 2010
greenХХ, Формула для УФ

Код
=$B2<>$D2
К сообщению приложен файл: Easy_UF.xlsx (11.6 Kb)


Сообщение отредактировал YouGreed - Понедельник, 23.03.2020, 15:56
 
Ответить
СообщениеgreenХХ, Формула для УФ

Код
=$B2<>$D2

Автор - YouGreed
Дата добавления - 23.03.2020 в 15:55
greenХХ Дата: Понедельник, 23.03.2020, 17:49 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
YouGreed, спасибо, но требуется более изящное решение на макросе. Находил стороннюю ветку в обсуждении где что то подобное сделали
 
Ответить
СообщениеYouGreed, спасибо, но требуется более изящное решение на макросе. Находил стороннюю ветку в обсуждении где что то подобное сделали

Автор - greenХХ
Дата добавления - 23.03.2020 в 17:49
greenХХ Дата: Понедельник, 23.03.2020, 20:19 | Сообщение № 4
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
YouGreed, что типа:
[vba]
Код

Sub u_700()
    Application.ScreenUpdating = False
    u_1 = Cells(Rows.Count, "b").End(xlUp).Row
    For Each u In Range("b2:b" & u_1)
        u_2 = Len(u)
        u_3 = Len(u.Offset(0, -1))
        u_4 = u_2 - u_3
        u.Characters(Start:=u_3 + 1, Length:=u_4).Font.Color = -16776961
    Next
    Application.ScreenUpdating = True
End Sub

[/vba]


Сообщение отредактировал greenХХ - Понедельник, 23.03.2020, 21:49
 
Ответить
СообщениеYouGreed, что типа:
[vba]
Код

Sub u_700()
    Application.ScreenUpdating = False
    u_1 = Cells(Rows.Count, "b").End(xlUp).Row
    For Each u In Range("b2:b" & u_1)
        u_2 = Len(u)
        u_3 = Len(u.Offset(0, -1))
        u_4 = u_2 - u_3
        u.Characters(Start:=u_3 + 1, Length:=u_4).Font.Color = -16776961
    Next
    Application.ScreenUpdating = True
End Sub

[/vba]

Автор - greenХХ
Дата добавления - 23.03.2020 в 20:19
Pelena Дата: Понедельник, 23.03.2020, 20:39 | Сообщение № 5
Группа: Админы
Ранг: Местный житель
Сообщений: 19162
Репутация: 4412 ±
Замечаний: ±

Excel 365 & Mac Excel
greenХХ, оформите код тегами с помощью кнопки # в режиме правки поста


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеgreenХХ, оформите код тегами с помощью кнопки # в режиме правки поста

Автор - Pelena
Дата добавления - 23.03.2020 в 20:39
greenХХ Дата: Понедельник, 23.03.2020, 21:49 | Сообщение № 6
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Pelena, выполнил
 
Ответить
СообщениеPelena, выполнил

Автор - greenХХ
Дата добавления - 23.03.2020 в 21:49
Nic70y Дата: Понедельник, 23.03.2020, 22:30 | Сообщение № 7
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
но требуется более изящное решение на макросе

что типа:
greenХХ, на самом деле это не более изящное решение,
т.к. цикл будет перебирать 1 000 000 Ваших строк дольше чем условное форматирование (C++(наверное) круче VBA(может быть))


ЮMoney 41001841029809
 
Ответить
Сообщение
но требуется более изящное решение на макросе

что типа:
greenХХ, на самом деле это не более изящное решение,
т.к. цикл будет перебирать 1 000 000 Ваших строк дольше чем условное форматирование (C++(наверное) круче VBA(может быть))

Автор - Nic70y
Дата добавления - 23.03.2020 в 22:30
greenХХ Дата: Вторник, 24.03.2020, 07:46 | Сообщение № 8
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Nic70y, у меня далеко не 1000 000 строк, а вот файлов отдельных, со строками 10-100 много, для этого и хочу проверку эту выполнять - автоматически по нажатию на кнопку - поэтому VBA
В части С++ я с ним вообще не знаком если направите меня в нужном направлении или примерчик какой....постараюсь разобраться.
 
Ответить
СообщениеNic70y, у меня далеко не 1000 000 строк, а вот файлов отдельных, со строками 10-100 много, для этого и хочу проверку эту выполнять - автоматически по нажатию на кнопку - поэтому VBA
В части С++ я с ним вообще не знаком если направите меня в нужном направлении или примерчик какой....постараюсь разобраться.

Автор - greenХХ
Дата добавления - 24.03.2020 в 07:46
Nic70y Дата: Вторник, 24.03.2020, 08:07 | Сообщение № 9
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
greenХХ, на счет С++ я имел ввиду, что на нем скорее всего написаны стандартные средства Excel,
я его сам не знаю.
на счет макроса:
Обозначение всегда пишется через минус (тире) или есть другие варианты?


ЮMoney 41001841029809
 
Ответить
СообщениеgreenХХ, на счет С++ я имел ввиду, что на нем скорее всего написаны стандартные средства Excel,
я его сам не знаю.
на счет макроса:
Обозначение всегда пишется через минус (тире) или есть другие варианты?

Автор - Nic70y
Дата добавления - 24.03.2020 в 08:07
greenХХ Дата: Вторник, 24.03.2020, 08:13 | Сообщение № 10
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Nic70y, приложил пример обозначений по ГОСТ
К сообщению приложен файл: 2646631.png (35.4 Kb)
 
Ответить
СообщениеNic70y, приложил пример обозначений по ГОСТ

Автор - greenХХ
Дата добавления - 24.03.2020 в 08:13
Nic70y Дата: Вторник, 24.03.2020, 08:16 | Сообщение № 11
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
greenХХ, приложите файл-Excel и объясните что с чем сравнивать


ЮMoney 41001841029809
 
Ответить
СообщениеgreenХХ, приложите файл-Excel и объясните что с чем сравнивать

Автор - Nic70y
Дата добавления - 24.03.2020 в 08:16
greenХХ Дата: Вторник, 24.03.2020, 08:59 | Сообщение № 12
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Nic70y, приложил:
1. В желтом блоке будет первичная информация вносится
2. В синем вторичная - обозначение по счетам
3. сравниваться должны Обозначение В2 с Обозначением из D2→ выделять в последнем отличия. В случае отсутствия отличия пропускать
4. по всем нижеидущим строчкам условие аналогичное
К сообщению приложен файл: 4563430.xlsx (10.9 Kb)
 
Ответить
СообщениеNic70y, приложил:
1. В желтом блоке будет первичная информация вносится
2. В синем вторичная - обозначение по счетам
3. сравниваться должны Обозначение В2 с Обозначением из D2→ выделять в последнем отличия. В случае отсутствия отличия пропускать
4. по всем нижеидущим строчкам условие аналогичное

Автор - greenХХ
Дата добавления - 24.03.2020 в 08:59
Nic70y Дата: Вторник, 24.03.2020, 09:33 | Сообщение № 13
Группа: Друзья
Ранг: Экселист
Сообщений: 8705
Репутация: 2260 ±
Замечаний: 0% ±

Excel 2010
[vba]
Код
Sub u_704()
    Application.ScreenUpdating = False
    u_1 = Cells(Rows.Count, "b").End(xlUp).Row
    For Each u In Range("b2:b" & u_1)
        If u <> u.Offset(0, 2) Then
            u_2 = Len(u)
            For i = 1 To u_2
                u_3 = Mid(u, i, 1)
                u_4 = Mid(u.Offset(0, 2), i, 1)
                If u_3 <> u_4 Then
                    u.Offset(0, 2).Characters(Start:=i, Length:=1).Font.Color = -16776961
                End If
            Next i
        End If
    Next
    Application.ScreenUpdating = True
End Sub
[/vba]
К сообщению приложен файл: 4563430.xlsm (19.4 Kb)


ЮMoney 41001841029809
 
Ответить
Сообщение[vba]
Код
Sub u_704()
    Application.ScreenUpdating = False
    u_1 = Cells(Rows.Count, "b").End(xlUp).Row
    For Each u In Range("b2:b" & u_1)
        If u <> u.Offset(0, 2) Then
            u_2 = Len(u)
            For i = 1 To u_2
                u_3 = Mid(u, i, 1)
                u_4 = Mid(u.Offset(0, 2), i, 1)
                If u_3 <> u_4 Then
                    u.Offset(0, 2).Characters(Start:=i, Length:=1).Font.Color = -16776961
                End If
            Next i
        End If
    Next
    Application.ScreenUpdating = True
End Sub
[/vba]

Автор - Nic70y
Дата добавления - 24.03.2020 в 09:33
greenХХ Дата: Вторник, 24.03.2020, 16:14 | Сообщение № 14
Группа: Пользователи
Ранг: Новичок
Сообщений: 10
Репутация: 0 ±
Замечаний: 0% ±

Excel 2019
Nic70y, спасибо большое.
Один вопрос, как? каким образом надо развиваться чтобы выйти на Ваш уровень?
 
Ответить
СообщениеNic70y, спасибо большое.
Один вопрос, как? каким образом надо развиваться чтобы выйти на Ваш уровень?

Автор - greenХХ
Дата добавления - 24.03.2020 в 16:14
Мир MS Excel » Вопросы и решения » Вопросы по Excel » Сравнение строк и подсветка отличий (Формулы/Formulas)
  • Страница 1 из 1
  • 1
Поиск:

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