powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / отбор в Exel
3 сообщений из 3, страница 1 из 1
отбор в Exel
    #36393459
есть в екселе столбец с данными типа
Код: plaintext
1.
2.
3.
4.
5.
Атлант ОПТ
Атлант ОПТ
Атлант ОПТ
Атлант ОПТ
УТН-Восток
УТН-Восток

а надо чтоб остались 2 строчки
Код: plaintext
1.
Атлант ОПТ
УТН-Восток
как можно это сделать?
...
Рейтинг: 0 / 0
отбор в Exel
    #36393529
Hugo121
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
У меня есть уже готовый скрипт, удаляет строки с повторяющимися значениями в активной колонке, но сперва надо по этой колонке всё отсортировать (т.е. тупо удаляется строка ниже, если значение повторяется), исходник бекапится в c:\Temp\BackupBeforeDelDuplicates
Теперь уже не помню зачем, но сперва сохраняется и исходник - вероятно затем, что можно передумать и после удаления :)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
Sub DelDuplicates()
Dim del As Long
Dim x As Integer
'Dim x As String
    If MsgBox("All Changes Will Be Saved!" & Chr( 13 ) & "Ispected Active Column." & Chr( 13 ) & "Continue?", vbExclamation + vbOKCancel, "Warning!") = vbCancel Then
     Exit Sub
     End If
     
WbPth = ActiveWorkbook.Path
WbName = ActiveWorkbook.Name
'x = (InputBox("What Column Inspected?", , 4)) * 1
'x = InputBox("What Column Inspected? (Letter)", "x", "A", 1500, 2000)
x = ActiveCell.Column
Application.ScreenUpdating = False

 strDate = Format(Now, "yyyy.mm.dd-hh.mm.ss")
 Set fs = CreateObject("Scripting.FileSystemObject")
If fs.FolderExists("c:\Temp\") = False Then MkDir "c:\Temp"

                 ActiveWorkbook.SaveAs Filename:="c:\Temp\BackupBeforeDelDuplicates." & strDate & "." & ActiveWorkbook.Name, _
                 FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=True, CreateBackup:=False

Application.DisplayAlerts = False

                  ActiveWorkbook.SaveAs Filename:=WbPth & "\" & WbName, _
                 FileFormat:=xlNormal, Password:="", WriteResPassword:="", ReadOnlyRecommended:=False, CreateBackup:=False
                
Application.DisplayAlerts = False

With ActiveSheet.UsedRange
  For Each cc In .Columns(x).Cells
cikl:
    If Cells(cc.Row, x).Value = Cells(cc.Row +  1 , x).Value _
    And Cells(cc.Row +  1 , x).Value <> "" Then
        Application.StatusBar = " Working on  " & cc.Row & " Row" ' визуализация работы
        Rows(cc.Row +  1 ).EntireRow.Delete Shift:=xlUp
        del = del +  1 
       ' Rows(cc.Row + 1).EntireRow.Hidden = True
                       
       GoTo cikl
    End If
  Next
End With

Application.StatusBar = False 'сбрасываем визуализацию работы
Application.ScreenUpdating = True
MsgBox "Ok! Deleted " & del & " Rows!"
End Sub
...
Рейтинг: 0 / 0
отбор в Exel
    #36394155
kyber
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В 2007 Экселе есть функция удаления дубликатов (Данные - Работа с данными - Удалить дубликаты)

Еще варианты:
1. Расширенный фильтр (галка "Только уникальные записи")
2. Сводная таблица (использовать только поле строк)
3. QueryTable + SQL-запрос с группировкой
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / Microsoft Office [игнор отключен] [закрыт для гостей] / отбор в Exel
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]