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

Вход

Регистрация

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

 

= Мир MS Excel/сортировка нестандартного формата - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: китин, _Boroda_  
сортировка нестандартного формата
карандаш Дата: Понедельник, 11.03.2013, 11:33 | Сообщение № 1
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

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

есть набор данных
[vba]
Код
178.94.18.87 [ whois ]
188.234.156.70 [ whois ]
192.162.8.48 [ whois ]
2.94.235.249 [ whois ]
2.94.39.73 [ whois ]
212.107.237.95 [ whois ]
217.118.95.83 [ whois ]
31.148.28.214 [ whois ]
31.43.114.30 [ whois ]
37.122.79.144 [ whois ]
[/vba]
он отсортирован как текст

можно ли задать какой-либо специальный формат или применить какой-то подход, чтобы сортировка шла с учетом того, что каждая триада имеет незначащие нули?

т.е. чтобы вышеприведëнный список отсортировался в следующем порядке
[vba]
Код

2.94.39.73 [ whois ]
2.94.235.249 [ whois ]
31.24.26.129 [ whois ]
31.43.114.30 [ whois ]
31.148.28.214 [ whois ]
37.122.79.144 [ whois ]
178.94.18.87 [ whois ]
188.234.156.70 [ whois ]
192.162.8.48 [ whois ]
212.107.237.95 [ whois ]
213.87.123.149 [ whois ]
217.118.95.83 [ whois ]
[/vba]


Сообщение отредактировал карандаш - Понедельник, 11.03.2013, 11:35
 
Ответить
СообщениеЗдравствуйте!

есть набор данных
[vba]
Код
178.94.18.87 [ whois ]
188.234.156.70 [ whois ]
192.162.8.48 [ whois ]
2.94.235.249 [ whois ]
2.94.39.73 [ whois ]
212.107.237.95 [ whois ]
217.118.95.83 [ whois ]
31.148.28.214 [ whois ]
31.43.114.30 [ whois ]
37.122.79.144 [ whois ]
[/vba]
он отсортирован как текст

можно ли задать какой-либо специальный формат или применить какой-то подход, чтобы сортировка шла с учетом того, что каждая триада имеет незначащие нули?

т.е. чтобы вышеприведëнный список отсортировался в следующем порядке
[vba]
Код

2.94.39.73 [ whois ]
2.94.235.249 [ whois ]
31.24.26.129 [ whois ]
31.43.114.30 [ whois ]
31.148.28.214 [ whois ]
37.122.79.144 [ whois ]
178.94.18.87 [ whois ]
188.234.156.70 [ whois ]
192.162.8.48 [ whois ]
212.107.237.95 [ whois ]
213.87.123.149 [ whois ]
217.118.95.83 [ whois ]
[/vba]

Автор - карандаш
Дата добавления - 11.03.2013 в 11:33
Pelena Дата: Понедельник, 11.03.2013, 11:49 | Сообщение № 2
Группа: Админы
Ранг: Местный житель
Сообщений: 19405
Репутация: 4555 ±
Замечаний: ±

Excel 365 & Mac Excel
В доп. столбец - числа до точки -- сортировать как числа


"Черт возьми, Холмс! Но как??!!"
Ю-money 41001765434816
 
Ответить
СообщениеВ доп. столбец - числа до точки -- сортировать как числа

Автор - Pelena
Дата добавления - 11.03.2013 в 11:49
ikki Дата: Понедельник, 11.03.2013, 13:24 | Сообщение № 3
Группа: Друзья
Ранг: Старожил
Сообщений: 1906
Репутация: 504 ±
Замечаний: 0% ±

Excel 2003, 2010
скорее - текст по столбцам, и сортировать как числа, ибо
Цитата (карандаш)
с учетом того, что каждая триада


помощь по Excel и VBA
ikki@fxmail.ru, icq 592842413, skype alex.ikki
 
Ответить
Сообщениескорее - текст по столбцам, и сортировать как числа, ибо
Цитата (карандаш)
с учетом того, что каждая триада

Автор - ikki
Дата добавления - 11.03.2013 в 13:24
Alex_ST Дата: Понедельник, 11.03.2013, 15:01 | Сообщение № 4
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Цитата (ikki)
текст по столбцам, и сортировать как числа
это точно!



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Понедельник, 11.03.2013, 15:01
 
Ответить
Сообщение
Цитата (ikki)
текст по столбцам, и сортировать как числа
это точно!

Автор - Alex_ST
Дата добавления - 11.03.2013 в 15:01
KuklP Дата: Понедельник, 11.03.2013, 15:41 | Сообщение № 5
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
Здесь обсуждали:
http://www.planetaexcel.ru/forum....D=22318


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеЗдесь обсуждали:
http://www.planetaexcel.ru/forum....D=22318

Автор - KuklP
Дата добавления - 11.03.2013 в 15:41
карандаш Дата: Понедельник, 11.03.2013, 16:27 | Сообщение № 6
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
Спасибо за ответы

Сходил по ссылке, вставил данные на Лист1, нажал кнопку - результат не совсем тот, который бы хотелось видеть

На Лист2 вставил исходные данные, но не совсем понял, что такое
Цитата (ikki)
скорее - текст по столбцам, и сортировать как числа

и как это применить к исходным данным на листе 2

форматирование как текст и дальнейшая сортировка не сортируют как числа
чего-то недопонял?
надо как-то разбить содержимое ячейки на несколько ячеек в одну строку?
К сообщению приложен файл: post_195282.xls (50.0 Kb)
 
Ответить
СообщениеСпасибо за ответы

Сходил по ссылке, вставил данные на Лист1, нажал кнопку - результат не совсем тот, который бы хотелось видеть

На Лист2 вставил исходные данные, но не совсем понял, что такое
Цитата (ikki)
скорее - текст по столбцам, и сортировать как числа

и как это применить к исходным данным на листе 2

форматирование как текст и дальнейшая сортировка не сортируют как числа
чего-то недопонял?
надо как-то разбить содержимое ячейки на несколько ячеек в одну строку?

Автор - карандаш
Дата добавления - 11.03.2013 в 16:27
Vitalts Дата: Понедельник, 11.03.2013, 16:46 | Сообщение № 7
Группа: Пользователи
Ранг: Новичок
Сообщений: 35
Репутация: 6 ±
Замечаний: 0% ±

Инструмент Text to Columns в помощь
 
Ответить
СообщениеИнструмент Text to Columns в помощь

Автор - Vitalts
Дата добавления - 11.03.2013 в 16:46
KuklP Дата: Понедельник, 11.03.2013, 17:15 | Сообщение № 8
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
За основу взял макрос от Слэна. Жмите кнопки на листах.
К сообщению приложен файл: 5534478.xls (54.0 Kb)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Понедельник, 11.03.2013, 17:18
 
Ответить
СообщениеЗа основу взял макрос от Слэна. Жмите кнопки на листах.

Автор - KuklP
Дата добавления - 11.03.2013 в 17:15
карандаш Дата: Понедельник, 11.03.2013, 18:33 | Сообщение № 9
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
KuklP, Vitalts, спасибо
работает макрос
даже нули вместо пробелов ставит во вторую и последующие триады (после небольшого изменения)
 
Ответить
СообщениеKuklP, Vitalts, спасибо
работает макрос
даже нули вместо пробелов ставит во вторую и последующие триады (после небольшого изменения)

Автор - карандаш
Дата добавления - 11.03.2013 в 18:33
RAN Дата: Понедельник, 11.03.2013, 18:45 | Сообщение № 10
Группа: Друзья
Ранг: Экселист
Сообщений: 5660
Репутация: 1163 ±
Замечаний: 0% ±

2010
Цитата (карандаш)
даже нули вместо пробелов ставит во вторую и последующие триады (после небольшого изменения)

А что, надо было?


Быть или не быть, вот в чем загвоздка!
 
Ответить
Сообщение
Цитата (карандаш)
даже нули вместо пробелов ставит во вторую и последующие триады (после небольшого изменения)

А что, надо было?

Автор - RAN
Дата добавления - 11.03.2013 в 18:45
карандаш Дата: Пятница, 15.03.2013, 15:17 | Сообщение № 11
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
KuklP, здравствуйте всем

незадача вышла
при большом объеме данных при запуске макроса эксел жалуется на неправильный аргумент
не могу найти ошибку

большие данные на втором листе
может в данных что-то не так?

*** большой объем получен с сайта путем нажатия на кнопку 'экспорта данных' и данные выдаются сразу в виде экселовского файла
а прежде я просто выделял на странице данные и копировал в эксел через копи-паст
 
Ответить
СообщениеKuklP, здравствуйте всем

незадача вышла
при большом объеме данных при запуске макроса эксел жалуется на неправильный аргумент
не могу найти ошибку

большие данные на втором листе
может в данных что-то не так?

*** большой объем получен с сайта путем нажатия на кнопку 'экспорта данных' и данные выдаются сразу в виде экселовского файла
а прежде я просто выделял на странице данные и копировал в эксел через копи-паст

Автор - карандаш
Дата добавления - 15.03.2013 в 15:17
карандаш Дата: Пятница, 15.03.2013, 15:24 | Сообщение № 12
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
не прикрепился
К сообщению приложен файл: 5534478.rar (25.1 Kb)
 
Ответить
Сообщениене прикрепился

Автор - карандаш
Дата добавления - 15.03.2013 в 15:24
KuklP Дата: Пятница, 15.03.2013, 16:10 | Сообщение № 13
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
У Вас в примере было [ whois ] в каждой строке. В последнем файле этого нет. Еще Вы там ерунды с r.Replace нагородили. Попробуйте так:
[vba]
Код
Sub SortByIp()
      Dim v(), x, i As Long, r As Range, s As String
      On Error GoTo merr
      With [b2]
          Set r = Range(Cells(.Row, .Column), Cells(Rows.Count, .Column).End(xlUp))
          v = r
          For i = 1 To UBound(v, 1)
              s = ""
              For Each x In Split(v(i, 1), ".")
                  s = s & Space$(3 - Len(x)) & x & "."
              Next
              v(i, 1) = Left$(s, Len(s) - 1) '& " [ whois ]"
          Next
          r.Value = v
          .CurrentRegion.sort Key1:=Range(.Address), Order1:=xlAscending, Header:=xlGuess
      End With
      r.Replace " ", "0", xlPart
      Exit Sub
merr:
'    Stop
      Resume Next
End Sub
[/vba]
Жесть!
К сообщению приложен файл: 1319573.gif (21.3 Kb)


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728


Сообщение отредактировал KuklP - Пятница, 15.03.2013, 16:11
 
Ответить
СообщениеУ Вас в примере было [ whois ] в каждой строке. В последнем файле этого нет. Еще Вы там ерунды с r.Replace нагородили. Попробуйте так:
[vba]
Код
Sub SortByIp()
      Dim v(), x, i As Long, r As Range, s As String
      On Error GoTo merr
      With [b2]
          Set r = Range(Cells(.Row, .Column), Cells(Rows.Count, .Column).End(xlUp))
          v = r
          For i = 1 To UBound(v, 1)
              s = ""
              For Each x In Split(v(i, 1), ".")
                  s = s & Space$(3 - Len(x)) & x & "."
              Next
              v(i, 1) = Left$(s, Len(s) - 1) '& " [ whois ]"
          Next
          r.Value = v
          .CurrentRegion.sort Key1:=Range(.Address), Order1:=xlAscending, Header:=xlGuess
      End With
      r.Replace " ", "0", xlPart
      Exit Sub
merr:
'    Stop
      Resume Next
End Sub
[/vba]
Жесть!

Автор - KuklP
Дата добавления - 15.03.2013 в 16:10
карандаш Дата: Пятница, 15.03.2013, 17:24 | Сообщение № 14
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
Цитата (KuklP)
Еще Вы там ерунды с r.Replace нагородили

моë единственное вмешательство - это замена пробела на ноль была в строках (почему-то задвоенной) замены
". " на ".0"
на большее не отважился в виду тщетности попыток понять принцип работы кода предложенного макроса

да, новый макрос работает без ошибок
большое спасибо!


***прим. А что это за приложенная картинка с подписью "Жесть!"?


Сообщение отредактировал карандаш - Пятница, 15.03.2013, 17:25
 
Ответить
Сообщение
Цитата (KuklP)
Еще Вы там ерунды с r.Replace нагородили

моë единственное вмешательство - это замена пробела на ноль была в строках (почему-то задвоенной) замены
". " на ".0"
на большее не отважился в виду тщетности попыток понять принцип работы кода предложенного макроса

да, новый макрос работает без ошибок
большое спасибо!


***прим. А что это за приложенная картинка с подписью "Жесть!"?

Автор - карандаш
Дата добавления - 15.03.2013 в 17:24
карандаш Дата: Пятница, 15.03.2013, 17:28 | Сообщение № 15
Группа: Проверенные
Ранг: Обитатель
Сообщений: 329
Репутация: 8 ±
Замечаний: 0% ±

2010
Цитата (RAN)
А что, надо было?


нет, это не оговаривалось - внешний вид в данном случае рояли не играет )))
просто попробовал - получилось )))
 
Ответить
Сообщение
Цитата (RAN)
А что, надо было?


нет, это не оговаривалось - внешний вид в данном случае рояли не играет )))
просто попробовал - получилось )))

Автор - карандаш
Дата добавления - 15.03.2013 в 17:28
Serge_007 Дата: Пятница, 15.03.2013, 17:29 | Сообщение № 16
Группа: Админы
Ранг: Местный житель
Сообщений: 16475
Репутация: 2749 ±
Замечаний: ±

Excel 2016
Цитата (KuklP)
Жесть!

Серёг, чё, опять?

У меня так:


Цитата (карандаш)
А что это за приложенная картинка с подписью "Жесть!"?

***прим. карандаш, у KuklP какой-то глюк с браузером
К сообщению приложен файл: 3531972.gif (41.9 Kb)


ЮMoney:41001419691823 | WMR:126292472390
 
Ответить
Сообщение
Цитата (KuklP)
Жесть!

Серёг, чё, опять?

У меня так:


Цитата (карандаш)
А что это за приложенная картинка с подписью "Жесть!"?

***прим. карандаш, у KuklP какой-то глюк с браузером

Автор - Serge_007
Дата добавления - 15.03.2013 в 17:29
KuklP Дата: Пятница, 15.03.2013, 17:45 | Сообщение № 17
Группа: Проверенные
Ранг: Старожил
Сообщений: 2369
Репутация: 486 ±
Замечаний: 0% ±

2003-2010
У меня в Лисе нормально. Но... я в Опере всегда, а там и не пропадал этот глюк. sad На всех остальных сайтах все ОК.


Ну с НДС и мы чего-то стoим! kuklp60@gmail.com
WM Z206653985942, R334086032478, U238399322728
 
Ответить
СообщениеУ меня в Лисе нормально. Но... я в Опере всегда, а там и не пропадал этот глюк. sad На всех остальных сайтах все ОК.

Автор - KuklP
Дата добавления - 15.03.2013 в 17:45
  • Страница 1 из 1
  • 1
Поиск:

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