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

Вход

Регистрация

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

 

= Мир MS Excel/Удаление строк - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
Удаление строк
msvmsu Дата: Пятница, 18.10.2013, 02:56 | Сообщение № 1
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Здравствуйте!

В столбце B есть повторяющиеся значения. Подскажите, как удалить строки (целиком), в которых значение в ячейке B* повторяет уже существующее.
В файле есть пример того, что должно получиться в итоге.

Заранее спасибо!
К сообщению приложен файл: 7257522.xlsx (9.2 Kb)
 
Ответить
СообщениеЗдравствуйте!

В столбце B есть повторяющиеся значения. Подскажите, как удалить строки (целиком), в которых значение в ячейке B* повторяет уже существующее.
В файле есть пример того, что должно получиться в итоге.

Заранее спасибо!

Автор - msvmsu
Дата добавления - 18.10.2013 в 02:56
китин Дата: Пятница, 18.10.2013, 07:25 | Сообщение № 2
Группа: Модераторы
Ранг: Экселист
Сообщений: 7030
Репутация: 1079 ±
Замечаний: 0% ±

Excel 2007;2010;2016
а "Удалить Дубликаты" не пробовали?


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениеа "Удалить Дубликаты" не пробовали?

Автор - китин
Дата добавления - 18.10.2013 в 07:25
msvmsu Дата: Пятница, 18.10.2013, 13:22 | Сообщение № 3
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
а "Удалить Дубликаты" не пробовали?

Удаляются дубликаты или в одном столбце, при этом значения в других строках теряются. Или удаляются только строки, где полностью одинаковые значения во всех ячейках.
Мне же нужно, чтобы строки были удалены на основании дубликатов только в одном столбце.


Сообщение отредактировал msvmsu - Пятница, 18.10.2013, 13:23
 
Ответить
Сообщение
а "Удалить Дубликаты" не пробовали?

Удаляются дубликаты или в одном столбце, при этом значения в других строках теряются. Или удаляются только строки, где полностью одинаковые значения во всех ячейках.
Мне же нужно, чтобы строки были удалены на основании дубликатов только в одном столбце.

Автор - msvmsu
Дата добавления - 18.10.2013 в 13:22
китин Дата: Пятница, 18.10.2013, 13:30 | Сообщение № 4
Группа: Модераторы
Ранг: Экселист
Сообщений: 7030
Репутация: 1079 ±
Замечаний: 0% ±

Excel 2007;2010;2016
ну не знаю....я в вашем файле выделяю столбец В .Удалить дубликаты;расширить выделенный диапазон;далее;снимаем галку с "столбец А".ОК.вуаля


Не судите очень строго:я пытаюсь научиться
ЯД 41001877306852
 
Ответить
Сообщениену не знаю....я в вашем файле выделяю столбец В .Удалить дубликаты;расширить выделенный диапазон;далее;снимаем галку с "столбец А".ОК.вуаля

Автор - китин
Дата добавления - 18.10.2013 в 13:30
SkyPro Дата: Пятница, 18.10.2013, 13:31 | Сообщение № 5
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
Выделяете диапазон и запускаете макрос:
[vba]
Код
Sub УдалениеСтрокПоУсловию()
        Dim ra As Range, delra As Range, ТекстДляПоиска As String
        Application.ScreenUpdating = False    ' отключаем обновление экрана
       ТекстДляПоиска = InputBox("что ищем? ", "Введите текст для поиска")       ' удаляем строки с таким текстом
            i = 0
            ' перебираем все строки в используемом диапазоне листа
       For Each ra In selection
            ' если в строке найден искомый текст
           If Not ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
                ' добавляем строку в диапазон для удаления
               If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
            i = i + 1
            End If
        Next
        ' если подходящие строки найдены - удаляем их
       answ = MsgBox("Найдено " & i & " строк. Удалить?", vbYesNo)
           Select Case answ
           Case vbNo
           Exit Sub
           End Select
           If Not delra Is Nothing Then delra.EntireRow.Delete
           Application.ScreenUpdating = True
    End Sub
[/vba]
Где взял - не помню.


skypro1111@gmail.com

Сообщение отредактировал SkyPro - Пятница, 18.10.2013, 13:32
 
Ответить
СообщениеВыделяете диапазон и запускаете макрос:
[vba]
Код
Sub УдалениеСтрокПоУсловию()
        Dim ra As Range, delra As Range, ТекстДляПоиска As String
        Application.ScreenUpdating = False    ' отключаем обновление экрана
       ТекстДляПоиска = InputBox("что ищем? ", "Введите текст для поиска")       ' удаляем строки с таким текстом
            i = 0
            ' перебираем все строки в используемом диапазоне листа
       For Each ra In selection
            ' если в строке найден искомый текст
           If Not ra.Find(ТекстДляПоиска, , xlValues, xlPart) Is Nothing Then
                ' добавляем строку в диапазон для удаления
               If delra Is Nothing Then Set delra = ra Else Set delra = Union(delra, ra)
            i = i + 1
            End If
        Next
        ' если подходящие строки найдены - удаляем их
       answ = MsgBox("Найдено " & i & " строк. Удалить?", vbYesNo)
           Select Case answ
           Case vbNo
           Exit Sub
           End Select
           If Not delra Is Nothing Then delra.EntireRow.Delete
           Application.ScreenUpdating = True
    End Sub
[/vba]
Где взял - не помню.

Автор - SkyPro
Дата добавления - 18.10.2013 в 13:31
DJ_Marker_MC Дата: Пятница, 18.10.2013, 13:37 | Сообщение № 6
Группа: Друзья
Ранг: Ветеран
Сообщений: 991
Репутация: 213 ±
Замечаний: 0% ±

Excel 2019
SkyPro, класс! Спасибо, взял в копилку, может как нибудь пригодится!
 
Ответить
СообщениеSkyPro, класс! Спасибо, взял в копилку, может как нибудь пригодится!

Автор - DJ_Marker_MC
Дата добавления - 18.10.2013 в 13:37
msvmsu Дата: Пятница, 18.10.2013, 15:54 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Выделяете диапазон и запускаете макрос:

Если я првильно понимаю, этот макрос удаляет строки по определенному значению, которое специально вводится. А мне нужно, чтобы удалились дубликаты. При этом одна строка с таким значением осталась (т.е. чтобы значение стало уникальным).
Или я неправильно пользуюсь этим макросом?
 
Ответить
Сообщение
Выделяете диапазон и запускаете макрос:

Если я првильно понимаю, этот макрос удаляет строки по определенному значению, которое специально вводится. А мне нужно, чтобы удалились дубликаты. При этом одна строка с таким значением осталась (т.е. чтобы значение стало уникальным).
Или я неправильно пользуюсь этим макросом?

Автор - msvmsu
Дата добавления - 18.10.2013 в 15:54
SkyPro Дата: Пятница, 18.10.2013, 16:01 | Сообщение № 8
Группа: Друзья
Ранг: Старожил
Сообщений: 1206
Репутация: 255 ±
Замечаний: 0% ±

2010
msvmsu, Китин вам уже предложил самый простой рабочий вариант.
Выделяете все, нажимаете "удалить дубликаты", оставляете только тот столбец, где нужен поиск дублей и жмете ок.

А я "протупил" и поспешил :)

Если совсем лень разобраться, то вот:[vba]
Код
Sub removeduplicates()
     ActiveSheet.UsedRange.removeduplicates Columns:=2, Header:=xlNo
End Sub
[/vba]


skypro1111@gmail.com

Сообщение отредактировал SkyPro - Пятница, 18.10.2013, 16:04
 
Ответить
Сообщениеmsvmsu, Китин вам уже предложил самый простой рабочий вариант.
Выделяете все, нажимаете "удалить дубликаты", оставляете только тот столбец, где нужен поиск дублей и жмете ок.

А я "протупил" и поспешил :)

Если совсем лень разобраться, то вот:[vba]
Код
Sub removeduplicates()
     ActiveSheet.UsedRange.removeduplicates Columns:=2, Header:=xlNo
End Sub
[/vba]

Автор - SkyPro
Дата добавления - 18.10.2013 в 16:01
msvmsu Дата: Пятница, 18.10.2013, 16:24 | Сообщение № 9
Группа: Пользователи
Ранг: Новичок
Сообщений: 49
Репутация: 0 ±
Замечаний: 20% ±

Excel 2010
Отлично! Все работает. Спасибо!
 
Ответить
СообщениеОтлично! Все работает. Спасибо!

Автор - msvmsu
Дата добавления - 18.10.2013 в 16:24
  • Страница 1 из 1
  • 1
Поиск:

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