Internet Zone - компьютерный электронный журнал Главная izcity.com | Статьи | Computer FAQ | T0P-100 Software | Программы на www.izone.ru

IZone форум
06 Января 2009, 04:22:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
ITrader – преобразуй время в деньги!
Программа, дающая доступ к торговле на всех мировых финансовых рынках для возможности заработка с помощью следующих инструментов: валюты, акции, индексы, нефть, драгоценные металлы. Скачай и открой бесплатный Демо-счет! Обучение. Депозит от 1000 рублей.
Подробнее...
 
   Начало   Помощь Поиск Войти Регистрация  

Страниц: [1] 2
  Печать  
Автор Тема: Microsoft Exсel  (Прочитано 3353 раз)
0 Пользователей и 1 Гость смотрят эту тему.
RSGN
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« : 14 Ноября 2007, 23:29:12 »

Подскажите пожалуста!
Как отсортировать список IP адресов?
Проблема вот в чём - при сортировке exel считает например 192.168.11.155 меньше 192.168.11.99
192.168.11.84
192.168.11.83
192.168.11.82
192.168.11.81
192.168.11.80
192.168.11.20
192.168.11.19
192.168.11.17
192.168.11.16
192.168.11.15
192.168.11.138
192.168.11.137
192.168.11.135
192.168.11.134
192.168.11.133
192.168.11.131

Насколько я понял он считывает последнюю цифру слева направо и раз единичка в цифре 155 меньше девятки в цифре 99 так и получается!
как заставить её сравнивать всю цифру, а не по одной?
вроде сумел обьяснить
Записан
Krab
Постоялец
***

Репутация: +120/-6
Offline Offline

Сообщений: 906


Цель - результат прогресса


« Ответ #1 : 15 Ноября 2007, 02:25:34 »

А Word не подходит? Excel у меня сейчас не установлен, но в Word'е такой список сортируется легко.
Записан
ALEX
Гость
« Ответ #2 : 15 Ноября 2007, 14:01:04 »

Подскажите пожалуста!
Как отсортировать список IP адресов?
Проблема вот в чём - при сортировке exel считает например 192.168.11.155 меньше 192.168.11.99

Попробуйте выделить ячейки, в которых производите сортировку, затем нажмите правой кнопкой мыши и выберете пункт Формат ячеек - Число. На вкладке Число попробуйте поставить Текстовый (текстовое отображение данных в ячейках). А потом произведите снова сортировку. Если таким методом не получится отсортировать, то в пункте контекстного меню Формат ячеек попробуйте указать другие форматы данных (Общий, Числовой), а потом произведите сортировку.
Записан
Лестрейд
Новичок
*

Репутация: +4/-2
Offline Offline

Сообщений: 24



« Ответ #3 : 15 Ноября 2007, 14:51:12 »

Для сортировки такого списка в Excel нужно писать специальный макрос. Excel воспринимает значения, как текстовые, поэтому, для него, например, 100 - значение меньше, чем 99. Но, если представить IP-адреса в списке в виде 192.168.011.020, то есть, в каждом элементе IP адреса указать все три цифры, а незначащие цифры заменить нулями, то такой список может быть отсортирован так, как нужно. Чтобы представить адреса в таком виде, потребуется создать специальный формат в меню Формат-Ячейки-Число.
Записан
Diman
Новичок
*

Репутация: +11/-2
Offline Offline

Сообщений: 131


« Ответ #4 : 16 Ноября 2007, 09:09:59 »

Согласен с Лестрейдом, без макроса не получится. Единственное с чем не согласен, что можно создать свой формат, вида 000.000.000.000, в меню Формат-Ячейки-Числовой. Помоему, такой формат можно задать тоже только с помощью макроса.
А Word не подходит? Excel у меня сейчас не установлен, но в Word'е такой список сортируется легко.
Скажите пожалуйста, а как в Word'e такое можно сделать? Я, например, не знаю. (Макросы в расчет не берем.)
Записан
Vjacheslav_
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #5 : 16 Ноября 2007, 12:06:54 »

Если допустим такой вариант, то можно вместо недостающей цифры в группе вводить Пробел. Предварительно установив формат ячеек Текстовый.
Записан
Krab
Постоялец
***

Репутация: +120/-6
Offline Offline

Сообщений: 906


Цель - результат прогресса


« Ответ #6 : 16 Ноября 2007, 15:30:44 »

Скажите пожалуйста, а как в Word'e такое можно сделать? Я, например, не знаю. (Макросы в расчет не берем.)
Выделяем нужный диапазон адресов (возможно, все). Из меню Word Таблица преобразуем выделенный текст в таблицу, он автоматически разделится на четыре столбца. Не снимая выделения, сортируем таблицу командой сортировки из того же меню. Поскольку Word позволяет одновременно сортировать таблицу только по трем столбцам, берем в ключи сортировки три последних столбца, при этом автоматически Word установит сортировку как числовую. Если не все адреса начинаются со 192, как в примере, то понадобится второй раз отсортировать таблицу по первому столбцу. Затем преобразовываем таблицу обратно в текст командой из того же меню, выбрав в качестве разделителя точку. Снимаем выделение. Все.

В Excel тоже можно использовать мастер преобразования текста в таблицу, сортировку этой таблицы и слияние затем содержимого ячеек каждой строки в одну ячейку, но там все это гораздо более громоздко и без записи макро практически неприменимо.
Записан
Vadim_L
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


Добудем знания! и еще чего по ходу....


« Ответ #7 : 16 Ноября 2007, 18:54:57 »

   Здрасте!
Удивляет частое упоминание о необходимости писать макросы для решения
довольно простых задач!
Суть рассматриваемого вопроса - сортировать текст по числовому принципу.
Вперед! Делаем из текста число. В данном примере отличие строк только в последних
символах - отсечём их и "оцифрим" умножением на 1, а точнее:
(пример скопировать вместе с заголовками и вставить в ячейку А1)

Исходный   ДляСортировки
192.168.11.84   =ПРАВСИМВ(A2;ДЛСТР(A2)-11)*1
192.168.11.83   =ПРАВСИМВ(A3;ДЛСТР(A3)-11)*1
192.168.11.82   =ПРАВСИМВ(A4;ДЛСТР(A4)-11)*1
192.168.11.81   =ПРАВСИМВ(A5;ДЛСТР(A5)-11)*1
192.168.11.80   =ПРАВСИМВ(A6;ДЛСТР(A6)-11)*1
192.168.11.20   =ПРАВСИМВ(A7;ДЛСТР(A7)-11)*1
192.168.11.19   =ПРАВСИМВ(A8;ДЛСТР(A8)-11)*1
192.168.11.17   =ПРАВСИМВ(A9;ДЛСТР(A9)-11)*1
192.168.11.16   =ПРАВСИМВ(A10;ДЛСТР(A10)-11)*1
192.168.11.15   =ПРАВСИМВ(A11;ДЛСТР(A11)-11)*1
192.168.11.138   =ПРАВСИМВ(A12;ДЛСТР(A12)-11)*1
192.168.11.137   =ПРАВСИМВ(A13;ДЛСТР(A13)-11)*1
192.168.11.135   =ПРАВСИМВ(A14;ДЛСТР(A14)-11)*1
192.168.11.134   =ПРАВСИМВ(A15;ДЛСТР(A15)-11)*1
192.168.11.133   =ПРАВСИМВ(A16;ДЛСТР(A16)-11)*1
192.168.11.131   =ПРАВСИМВ(A17;ДЛСТР(A17)-11)*1

Сортируем по последнему столбцу и его удаляем за ненадобностью. Улыбка

Если отличие есть и в других частях адреса, то попробуем так:
(пример скопировать вместе с заголовками и вставить в ячейку А1)

Исходный   ДляСорт_4   ДляСорт_3   ДляСорт_2   ДляСорт_1
192.168.11.84   =ПСТР(B25;1;3)*1   =ПСТР(B25;5;3)*1   =ПСТР(B25;9;2)*1   =ПРАВСИМВ(B25;ДЛСТР(B25)-11)*1
192.168.11.83   =ПСТР(B26;1;3)*1   =ПСТР(B26;5;3)*1   =ПСТР(B26;9;2)*1   =ПРАВСИМВ(B26;ДЛСТР(B26)-11)*1
192.168.11.82   =ПСТР(B27;1;3)*1   =ПСТР(B27;5;3)*1   =ПСТР(B27;9;2)*1   =ПРАВСИМВ(B27;ДЛСТР(B27)-11)*1
192.168.11.81   =ПСТР(B28;1;3)*1   =ПСТР(B28;5;3)*1   =ПСТР(B28;9;2)*1   =ПРАВСИМВ(B28;ДЛСТР(B28)-11)*1
192.168.11.80   =ПСТР(B29;1;3)*1   =ПСТР(B29;5;3)*1   =ПСТР(B29;9;2)*1   =ПРАВСИМВ(B29;ДЛСТР(B29)-11)*1
192.168.11.20   =ПСТР(B30;1;3)*1   =ПСТР(B30;5;3)*1   =ПСТР(B30;9;2)*1   =ПРАВСИМВ(B30;ДЛСТР(B30)-11)*1
192.168.11.19   =ПСТР(B31;1;3)*1   =ПСТР(B31;5;3)*1   =ПСТР(B31;9;2)*1   =ПРАВСИМВ(B31;ДЛСТР(B31)-11)*1
192.168.11.17   =ПСТР(B32;1;3)*1   =ПСТР(B32;5;3)*1   =ПСТР(B32;9;2)*1   =ПРАВСИМВ(B32;ДЛСТР(B32)-11)*1
192.168.11.16   =ПСТР(B33;1;3)*1   =ПСТР(B33;5;3)*1   =ПСТР(B33;9;2)*1   =ПРАВСИМВ(B33;ДЛСТР(B33)-11)*1
192.168.11.15   =ПСТР(B34;1;3)*1   =ПСТР(B34;5;3)*1   =ПСТР(B34;9;2)*1   =ПРАВСИМВ(B34;ДЛСТР(B34)-11)*1
192.168.11.138   =ПСТР(B35;1;3)*1   =ПСТР(B35;5;3)*1   =ПСТР(B35;9;2)*1   =ПРАВСИМВ(B35;ДЛСТР(B35)-11)*1
192.168.11.137   =ПСТР(B36;1;3)*1   =ПСТР(B36;5;3)*1   =ПСТР(B36;9;2)*1   =ПРАВСИМВ(B36;ДЛСТР(B36)-11)*1
192.168.11.135   =ПСТР(B37;1;3)*1   =ПСТР(B37;5;3)*1   =ПСТР(B37;9;2)*1   =ПРАВСИМВ(B37;ДЛСТР(B37)-11)*1
192.168.11.134   =ПСТР(B38;1;3)*1   =ПСТР(B38;5;3)*1   =ПСТР(B38;9;2)*1   =ПРАВСИМВ(B38;ДЛСТР(B38)-11)*1
192.168.11.133   =ПСТР(B39;1;3)*1   =ПСТР(B39;5;3)*1   =ПСТР(B39;9;2)*1   =ПРАВСИМВ(B39;ДЛСТР(B39)-11)*1
192.168.11.131   =ПСТР(B40;1;3)*1   =ПСТР(B40;5;3)*1   =ПСТР(B40;9;2)*1   =ПРАВСИМВ(B40;ДЛСТР(B40)-11)*1

 Далее сортируем подряд столбцы начиная с ПОСЛЕДНЕГО!, как пронумерованы.

С уважением Вадим
Записан
RSGN
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #8 : 16 Ноября 2007, 23:03:33 »

Всё так сложно!
Знаю что надо учиться, учиться и учиться
попробовал ваши советы ничего не выходит, видимо не по моим мозгам
  ул.    дом   кв.   тел.            Ф.И.О.                район           IP              прим.    Имя
Ленина     1   7      1-23-45   Иванов Иван Иваныч   центр   192.168.18.107     м   Komp
Ленина     2   6      1-23-45   Иванов Иван Иваныч   центр   192.168.18.108     м   Komp
Ленина     3   5      1-23-45   Иванов Иван Иваныч   центр   192.168.18.109     м   Komp
Ленина     4   4      1-23-45   Иванов Иван Иваныч   центр   192.168.18.11    <<<    Komp
Ленина     5   3      1-23-45   Иванов Иван Иваныч   центр   192.168.18.110     м   Komp
Ленина     6   2      1-23-45   Иванов Иван Иваныч   центр   192.168.18.111      м   Komp
Ленина     7   1      1-23-45   Иванов Иван Иваныч   центр   192.168.18.112     м   Komp
вот так у меня в таблице(exel)
сортирую по заголовкам , по IP
И строка с 192.168.18.11 ни как не хочет встать перед 192.168.18.107
 спасибо всем за потраченное время
Записан
Vadim_L
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


Добудем знания! и еще чего по ходу....


« Ответ #9 : 17 Ноября 2007, 11:33:57 »

Сделаем так:
1. таблицу из последнего примера у себя
скопируйте и вставте в новый лист начиная с
ячейки А1;
2. в ячейку J2 вставте формулу
=ПРАВСИМВ(G2;ДЛСТР(G2)-11)*1
3. протягиваем формулу до конца таблицы
4. сортируем данные по этому столбцу (обязательно
напишите заголовок столбца)
Если все получилось, скопируйте формулу в свою таблицу.
Если не получилось - дайте адрес электронки и я перешлю
действующий образец.
Удачи!
Записан
Vjacheslav_
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 2


« Ответ #10 : 18 Ноября 2007, 11:59:50 »

По поводу сортировки: применять формулу - очень хорошо. Но мне кажется, что это скорее для общего развития (на будущее). В данном конкретном примере вполне достаточно уже приведенного мною способа - вставить пробел вместо недостающей цифры в группе (лучше 2 пробела для выравнивания столбца).
192.168.18.  11      Попробуйте.
Записан
sch
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 1


« Ответ #11 : 18 Ноября 2007, 21:28:05 »

1 скопировать столбец с даными в соседнюю колонку
2 выделить этот столбец
3 делать replace 192.168.11 на пустое место
4 отсортировать
5 удалить столбец
Записан
Diman
Новичок
*

Репутация: +11/-2
Offline Offline

Сообщений: 131


« Ответ #12 : 19 Ноября 2007, 08:46:01 »

По моему самое банальное решение этой задачи:
1. Выделяешь все номера ip.
2. Заменяешь все точки на запятые (после такой замены Excel будет работать с номерами как с числами, а не как со строкой).
3. Сортируешь данные как тебе надо.
4. Повторяешь п.1.
5. Заменяешь все запятые на точки.
Банально, но эффективно. И никакого программирования Улыбка
Записан
Андрей_Бонд
Новичок
*

Репутация: +0/-0
Offline Offline

Сообщений: 3


« Ответ #13 : 23 Апреля 2008, 09:58:13 »

Здравствуйте уважаемые форумчане! Не подскажет ли кто-нибудь, как число 4 представить в виде 04. Перевожу десятичную дробь в градусы_минуты_секунды. Пример: 28.06676043, получаю в трех ячейках 28   4   0.34, а хотелось бы иметь 28   04   00.34. Попробовал все варианты в "формате ячейки". Похожий вариант "табель", но там четыре знака, получается 0004. У меня стоит office 2003.
Записан
Diman
Новичок
*

Репутация: +11/-2
Offline Offline

Сообщений: 131


« Ответ #14 : 23 Апреля 2008, 17:16:47 »

Элементарно, Ватсон Подмигивающий
1. Выбираешь в ячейке с четверкой в контекстном меню пункт "Формат ячеек..."
2. На вкладке "Число" в списке "Числовые форматы:" выбираешь "(все форматы)"
3. В строке "Тип:" пишешь два ноля
4. Кликаешь на педали ОК
Теперь у однозначного числа в этой ячейке будет добавлен автоматически нолик спереди.
Можно, при необходимости, поменять формат ячеек во всем столбце, если выбрать вместо одной ячейки целый столбец.
Соответственно, если, например, надо получить трехзначное число, т.е. два ноля перед четверкой, то в строке "Тип:" надо записать 3 ноля.
Записан
Страниц: [1] 2
  Печать  
 
Перейти в:  


Главная izcity.com | Статьи | Computer FAQ | T0P-100 Software | Программы на www.izone.ru
Copyright © Internet Zone, Рассылка - Реклама у нас - Контакты

Rambler's Top100

Powered by SMF 1.1.7 | SMF © 2006, Simple Machines LLC