Как список адресов преобразовать в эксель
Адрес — адрес страницы в сети интернет или путь к файлу на диске. Адрес может указывать на определенное место в Книге, например на ячейку или именованный диапазон. Путь может представлять собой путь к файлу на жестком диске, либо URL-адрес в Интернете или интрасети. Аргумент Адрес записывается в виде текстовой строки, заключенной в кавычки, или представляет собой ссылку на ячейку, содержащую гиперссылку или путь в виде текстовой строки (без кавычек).
Открываем файл на диске
С помощью функции ГИПЕРССЫЛКА () можно открыть файл, сохраненный на диске компьютера или сервера. Откроем стандартный файл Windows для редактирования текста Notepad.exe
Если на компьютере имеется диск D: на котором в папке Finance имеется файл БазаДанных.xlsx , то открыть его поможет формула
После этого, в окне файла БазаДанных.xlsx , станет активной ячейка A5 .
Переходим на другой лист в текущей книге
Предположим, что требуется сделать ссылку с Листа1 на Лист2 в книге БазаДанных.xlsx .
Поместим формулу с функцией ГИПЕРССЫЛКА() в ячейке А18 на Листе1 (см. файл примера ).
Плохой новостью является то, что если у Вас открыто 2 или более файлов EXCEL (в одном экземпляре программы, см. примечание ниже), то функция ЯЧЕЙКА() может вернуть имя другого открытого файла (если Вы его изменяли). Так что будьте осторожнее с функцией ЯЧЕЙКА() . Поэтому иногда удобнее ссылки внутри книги создавать с помощью стандартного механизма гиперссылок, нажав CTRL+K или через меню Вставка/ Связи/ Гиперссылка (после вызова окна Вставка гиперссылки выберите Связать с: местом в документе ).
Абсолютные и относительные гиперссылки в Excel
В Excel существует два типа гиперссылок: абсолютные и относительные.
Абсолютные гиперссылки
Абсолютные гиперссылки содержат в себе полный интернет адрес или полный путь на компьютере. Например:
Относительные гиперссылки
Относительные ссылки содержат в себе частичный путь, например:
Я рекомендую всегда использовать абсолютные ссылки, так как при переходе по относительным ссылкам в Excel файле, открытом на другом компьютере возможны ошибки.
Как редактировать гиперссылку в Excel
Для редактирования уже созданной гиперссылки, кликните по ячейке со ссылкой правой клавишей мыши и в выпадающем меню выберите “Edit Hyperlink”.
В диалоговом окне внесите корректировки в ссылку.
Как отформатировать гиперссылку в Excel
По умолчанию, все гиперссылки в Excel имеют традиционный формат в виде подчеркнутого текста синего цвета. Для того чтобы изменить формат гиперссылки:
- Перейдите на вкладку панели инструментов “Главная”, затем в раздел “Стили ячеек”:
- Кликните на “Гиперссылка” правой кнопкой мыши и выберите пункт “Изменить” для редактирования формата ссылки:
- Кликните на “Открывавшаяся гиперссылка” правой кнопкой мы и выберите пункт “Изменить” для редактирования формата ссылки;
- В диалоговом окне “Стили” нажмите кнопку “Формат”:
- в диалоговом окне “Format Cells” перейдите на вкладки “Шрифт” и/или “Заливка” для настройки формата ссылок:
Как удалить гиперссылку в Excel
Удаление гиперссылки осуществляется в два клика:
- Нажмите правой клавишей мыши на ячейки со ссылкой;
- В выпадающем меню выберите пункт “Удалить гиперссылку”.
Примеры использования функции ГИПЕРССЫЛКА в Excel
Как создать гиперссылку на файл в Excel? Пример 1. Бухгалтер предприятия выполняет различные расчеты и хранит таблицы данных в Excel в одной книге (Бухгалтерия.xlsx), содержащей множество листов. Для удобства было решено создать отдельный лист с оглавлением в виде гиперссылок на каждый из имеющихся листов.
На новом листе создадим следующую таблицу:
Для создания гиперссылки используем формулу:
Описание аргументов функции:
Аналогично создадим гиперссылки для остальных страниц. В результате получим:
Динамическая гиперссылка в Excel
Пример 2. В таблице Excel содержатся данные о курсах некоторых валют, которые используются для выполнения различных финансовых расчетов. Поскольку обменные курсы являются динамически изменяемыми величинами, бухгалтер решил поместить гиперссылку на веб-страницу, которая предоставляет актуальные данные.
В результате получим:
Примечание: указанная веб-страница будет открыта в браузере, используемом в системе по умолчанию.
Виды гиперссылок
Если добавлять гиперссылку первым способом (напрямую в ячейку), то пользователь будет работать с диалоговым окном «Добавление гиперссылки», в котором предлагается 4 способа связи:
- Файл, веб-страница (здесь указывается путь к файлу или адрес сайта).
- Место в документе (лист или ячейка).
- Новый документ (путь к новому документу).
- Электронная почта (здесь указывается адрес получателя, который будет отображен при открытии Microsoft Outlook).
Существующие типы гиперссылок
Если вдруг нужно будет изменить или удалить существующую гиперссылку, достаточно щелкнуть на ней правой кнопкой мыши и выбрать соответствующий пункт («изменить» или «удалить гиперссылку»).
Такими довольно простыми способами можно создать гиперссылку в Excel. Наиболее простым и практичным способом является первый — через ячейку. Дело в том, что именно здесь собраны все варианты: можно создать ссылку на любое поле в документе, можно указать путь к файлу, адрес сайта и т.д. Хотя использовать можно любой из этих способов — как удобнее.
Создание ссылки на другой лист
В рассмотренных выше примерах мы рассматривали ссылки только в рамках одного листа. Теперь давайте разберемся, как создать линки на другие листы.
В целом, алгоритм аналогичен тому, что мы уже описали выше для операций, выполняемых на одном и том же листе. Однако, теперь нужно, помимо адреса самой ячейки (или диапазона ячеек), указать еще и адрес конкретного листа. Для этого после знака “=” прописываем его название, затем ставим восклицательный знак (“!”), после чего уже указываем адрес требуемого элемента.
Например, ссылка на ячейку C5, расположенную на Листе 2, имеет следующий вид: =Лист2!C5 .
Как всегда, данное значение можно набрать самостоятельно, либо воспользоваться более удобным способом.
- Переходим в нужную ячейку, пишем знак “=”, далее кликаем по названию требуемого листа внизу окна программы.
- Мы окажемся на втором листе, где также кликом мыши выбираем ячейку, которую хотим добавить в наше выражение.
- Жмем клавишу Enter, что вернет нас на первоначальный лист с уже готовым результатом.
Внешняя ссылка на другую книгу
Итак, переходим ко внешним ссылкам и рассмотрим создание линка на другую книгу. Тут важно понимать, что механизм работы инструментов и функций Эксель с другим документами различается. Одни ссылки работают независимо от того, открыт ли документ, на который они ссылаются или нет. Для других же важно, чтобы файл был обязательно запущен.
Соответственно, виды ссылок на другие книги бывает разными. Когда мы используем их только совместно с открытыми документами, тогда можно как и в случае со ссылкой на другой лист в рамках одной книги, указать только название книги.
Но в случаях, когда мы хотим ссылаться на документы независимо от того, запущены они или нет, тогда придется указать их место расположения на компьютере.
При прочих равных условиях, наиболее предпочтительно использовать второй вариант, так как он предполагает большую свободу действий.
Итак, допустим, нам нужно создать ссылку на ячейку B5, которая находится на листе в открытой книге “Ссылки.xlsx”. В этом случае нам нужно прописать выражение, имеющее вид: =[Ссылки.xlsx]Лист3!B5 .
Ссылка же на закрытый файл выглядит несколько иначе: ='С:Папка1[Ссылки.xlsx]Лист3'!B5 .
Здесь также можно вместо прописывания адресов вручную, переключаться к нужным элементам и добавлять их в выражение путем клика по ним левой кнопкой мыши.
- Переходим в ячейку, куда планируем добавить выражение. Ставим знак “=”.
- Переключаемся в открытую книгу, в которой находится ячейка, на которую мы хотим сослаться. Щелкаем по нужному листу и далее – по требуемой ячейке.
- После того, как мы нажмем Enter, мы вернемся к первоначальной книге с готовым результатом по заданному выражению.
- В случае ненадобности, книгу, на которую мы сослались, можно закрыть. Ссылка изменит свой вид, и в нее добавится путь к документу. Соответственно, в тех случаях, когда функция, формула или иной инструмент способны работать с закрытыми документами, такая автозамена линка окажется крайне полезной.
Таким образом, как вы могли заметить, вместо ручного прописывания адресов куда проще создавать ссылки с помощью кликов левой кнопкой мыши по нужным элементами, причем совсем неважно, где они находятся – на том же листе, в этом же документе или в другой книге. И даже если после того, как мы создали внешний линк на другой документ и потом закрыли его, программа автоматически видоизменит ссылку, сохранив в ней полный путь к файлу.
Добавление гиперссылок
Прежде всего, рассмотрим способы добавления гиперссылок в документ.
вставка безанкорных гиперссылок
Проще всего вставить безанкорную ссылку на веб-страницу или адрес электронной почты. Безанкорная гиперссылка – эта такая ссылка, адрес которой прямо прописывается в ячейке и виден на листе без дополнительных манипуляций. Особенностью программы Excel является то, что любая безанкорная ссылка, вписанная в ячейку, превращается в гиперссылку.
Вписываем ссылку в любую область листа.
Теперь при клике на данную ячейку запустится браузер, который установлен по умолчанию, и перейдет по указанному адресу.
Аналогичным образом можно поставить ссылку на адрес электронной почты, и она тут же станет активной.
связь с местом в документе
Кроме того, существует возможность связать гиперссылкой ячейку с любым местом в текущем документе.
-
После того, как выделена нужная ячейка и вызвано через контекстное меню окно вставки гиперссылки, переключаем кнопку в левой части окна в позицию «Связать с местом в документе».
Вместо этого в нижнем поле можно также выбрать лист данного документа, куда будет совершаться переход при клике на ячейку. После того, как выбор сделан, следует нажать на кнопку «OK».
Теперь ячейка будет связана с конкретным местом текущей книги.
связь с электронной почтой
Ячейку при помощи ссылки можно связать даже с электронной почтой.
- В окне «Вставка гиперссылки» кликаем по кнопке «Связать с электронной почтой».
- В поле «Адрес электронной почты» вписываем e-mail, с которым хотим связать ячейку. В поле «Тема» можно написать тему письма. После того, как настройки выполнены, жмем на кнопку «OK».
вставка гиперссылки через кнопку на ленте
Гиперссылку также можно вставить через специальную кнопку на ленте.
-
Переходим во вкладку «Вставка». Жмем на кнопку «Гиперссылка», расположенную на ленте в блоке инструментов «Ссылки».
Как отключить автоматическое создание гиперссылок в Excel
- В Excel 2007 нажмите кнопку Office, затем Excel Options (Параметры Excel). Если у Вас Excel 2010 или 2013, то перейдите на вкладку File (Файл), затем – Options (Параметры).
- В диалоговом окне Excel Options (Параметры Excel) перейдите на вкладку Proofing (Правописание) и щелкните по кнопке AutoCorrect Options (Параметры автозамены).
- В диалоговом окне AutoCorrect (Автозамена) откройте вкладку AutoFormat As You Type (Автоформат при вводе) и снимите галочку с пункта Internet and network paths with hyperlinks (Адреса интернета и сетевые пути гиперссылками).
- Дважды щелкните ОК, чтобы закрыть оба диалоговых окна и вернуться на рабочий лист Excel.
Теперь можете вводить URL или адрес электронной почты в любой ячейке – Excel будет сохранять их в текстовом формате.
Если же вам действительно понадобится создать гиперссылку, просто нажмите комбинацию Ctrl+K и тут же откроется диалоговое окно Insert Hyperlink (Вставка гиперссылки).
Заключение
Таким образом, в Эксель используются два вида ссылок в зависимости от назначения. Одни используются в формулах и функциях, с помощью других (гиперссылки) осуществляется переход к нужным объектам в виде других документов, веб-страниц или e-mail. В зависимости от выбранного типа ссылки меняется алгоритм действий по созданию нужного линка.
Чаевые: В формуле J1 - это ячейка электронной почты, которую вы используете, вы можете изменить ее по своему усмотрению.
Затем перетащите дескриптор автозаполнения на ячейки, которые вам нужны, чтобы применить эту формулу.
1. Скопируйте и вставьте адреса электронной почты из Excel в документ Word как Сохранять только текст. Смотрите скриншот:
2. Выберите электронные письма и нажмите Главная > Заменять для отображения Найти и заменить диалог. Смотрите скриншот:
3. в Найти и заменить диалог, введите ^p в Найти то, что текстовое поле и ; в Заменить текстовое окно. Смотрите скриншот:
После бесплатная установка Kutools for Excel, сделайте следующее:
1. Выберите электронные письма и нажмите Kutools > Текст > Добавить текст. Смотрите скриншот:
2. в Добавить текст окно, введите точку с запятой ; в Текстовое окно, и проверьте После последнего символа. Смотрите скриншот:
В настоящее время я работаю с большим списком IP-адресов (их тысячи).
Однако, когда я сортирую столбец, содержащий IP-адреса, они не сортируются интуитивно понятным или простым способом.
Например, если я введу IP-адреса следующим образом:
И тогда, если я сортирую в порядке возрастания, я получаю это:
Можно ли отформатировать ячейки так, чтобы, например, IP-адрес 17.255.253.65 появлялся после 1.128.96.254 и до 103.236.162.56 при сортировке в порядке возрастания?
Если нет, есть ли другой способ для меня достичь этой конечной цели?
Это интересно - я был почти уверен, что формат ячейки повлияет на сортировку в некоторых случаях, и подумал, что это может быть одним из них. Благодарю за разъяснение! И Брюс поможет вам, если что-то из этого потребуется для обработки адресов IPv6!Как вы, возможно, поняли, ваши IP-адреса рассматриваются как текст, а не как числа. Они сортируются как текстовые, что означает, что адреса, начинающиеся с «162», будут предшествовать адресам, начинающимся с «20». (потому что символ «1» предшествует символу «2».
Если ваши IP-адреса находятся в столбцах A, добавьте столбцы BE, как показано ниже.
в ячейке B2 и скопируйте его в столбцы BE во всех строках, чтобы получить четыре части каждого IP-адреса. Теперь рассортируйте весь диапазон по столбцам от B до E (в указанном порядке), как показано ниже:
Если вы не хотите видеть вспомогательные столбцы (BE), вы можете их скрыть.
Вместо разделения на четыре столбца, может быть, было бы лучше «объединить» байты, как first*256^3+second*256^2+third*256+fourth в одном столбце? Тем более, что адреса IPv4 на самом деле являются просто 32-битными числами. Четырехразрядный способ отображения IP-адресов предназначен исключительно для удобства чтения. @Kat Я согласен, что это сработает, и для этого требуется только один вспомогательный столбец вместо четырех. Но формула в этом одном столбце будет довольно длинной, поэтому я решил использовать четыре столбца (я, вероятно, скрыл бы их в любом случае).Самое простое, трехэтапное решение, которое я могу предложить вам .
Выберите столбец IP-адрес, примените текст к столбцу команду « .
В соседней колонке напишите эту формулу
= СЦЕПИТЬ (В3, "", С3, "", D3, "", Е3)
Наконец сортировка в порядке возрастания.
Проверьте снимок экрана.
NB:
красный - это оригинальный IP-адрес (в столбце A).
зеленый после применения текста к столбцу (столбец от B до E).
черныйПосле нанесения цвета происходит конкатенация и сортировка (столбец F).
Причина заключается в том, что изначально IP-адрес очень прост: текстовые данные, и Excel не принимает формат ячейки, чтобы превратить его в номер.
Надеюсь, это поможет вам.
Это ужасно Вы никогда не хотите смешивать данные из разных строк. Он означает, что вы должны были включить исходный столбец A в сортировку, чтобы адреса iP были одинаковыми в каждой строке. Нет ,, ничего плохого я не сделал ,, требование ОП состояло в том, чтобы отсортировать IP-адрес в естественном порядке ,, (число), а столбец А в КРАСНОМ не отсортирован. Столбец F имеет отсортированный IP-адрес в черном цвете. +1 Это самое простое решение на странице. @RajeshS, возможно, измените слово «скорректированный» на «соседний» в вашем ответе - я думал, что вы имели в виду один из Text To Column столбцов там. @MaxW, макет только для демонстрации. Если вы хотите, чтобы исходный IP-адрес был отсортирован, просто пропустите шаг 2. Эту массивную формулу «VALUE (TRIM (MID (SUBSTITUTE») в принятом ответе следует заменить на «Текст в столбцы», а остальная часть ответа по сути такая же, как эта.Вот функция VBA, которую я написал некоторое время назад для решения той же проблемы. Он генерирует версию IPv4-адреса с добавками, которая сортируется правильно.
Простой пример:
Вы можете отсортировать по столбцу «Сортируемый» и скрыть его.
Я просто хочу отметить, что сортируемый IP-адрес будет анализироваться как отличный от исходного (потому что какой-то идиот решил интерпретировать его как восьмеричный). Так что используйте их только для сортировки и не рассматривайте их как надлежащие IP-адреса. Если вы собираетесь вытащить vba, почему бы просто не выполнить сортировку vba @RichardTingle 1. Это (немного) больше работы 2. Я мог бы хотеть отсортировать список несколькими различными способами в разные моментыВот ответ, который займет только 1 столбец вашей таблицы и преобразует адрес IPv4 в нумерацию с основанием 10.
Поскольку вы помещаете свои данные в столбец «M», это начинается в ячейке M2 (метка M1). Инкапсуляция в виде кода дает один ужасный беспорядок, поэтому я использовал blockquote:
= INT (ВЛЕВО (M2, FIND (".", M2) - 1)) * 256 ^ 3 + INT (MID (M2, FIND (".", M2) + 1, FIND (".", M2, FIND) (".", M2) + 1) - FIND (".", M2) -1)) * 256 ^ 2 + INT (MID (M2, FIND (".", M2, FIND (".", M2) + 1) + 1, FIND (".", M2, FIND (".", M2, FIND (".", M2) + 1) + 1) - FIND (".", M2, FIND ("." , M2) + 1) - 1)) * 256 + INT (ВПРАВО (M2, LEN (M2) - НАЙТИ (".", M2, НАЙТИ (".", M2, НАЙТИ (".", M2) + 1 ) + 1)))
Не совсем легко читаемая формула, но вы можете просто скопировать и вставить в свою ячейку (предпочтительно N2 или что-то еще в той же строке, что и ваш первый IP-адрес). Это предполагает правильное форматирование IP-адреса, так как исправление ошибок в формуле сделает его еще хуже при разборе человеком.
Если вы не хотите использовать формулы или VBA, используйте Power Query. (В Excel 2016, Get & Transform, в Excel 2010 или 2013 установите надстройку PowerQuery, чтобы следовать ей).
- Перенесите таблицу в редактор PowerQuery.
- Дублируйте столбец, щелкнув правой кнопкой мыши «Дублировать столбец»
- «Разделить столбец» разделителем на вкладке «Главная». Выберите «Каждое вхождение разделителя»
- Сортировать каждый столбец Asc. слева направо.
- Выберите ранее разделенные столбцы, щелкните правой кнопкой мыши и удалите, закройте и загрузите.
Это похожая строка, которая преобразует октеты в 3-значные поля, что позволяет выполнять надлежащую сортировку.
10.1.0.15 становится 10001000015 .
Чтобы сортировка работала, вы должны также дополнить первый октет начальными нулями.Как показано в вопросе, в столбце M указаны IP-адреса (IPv4), начиная с M2.
Получив хорошие ответы от каждого, вот мое решение. Требуется только 1 вспомогательный столбец. Мы пытаемся отформатировать адреса IPv4 в 012.198.043.009 формат, а затем отсортировать их:
- 12.198.43.9 чтобы 12 198 43 9 потом 012.198.043.009
Отформатируйте адреса IPv4 в 012.198.043.009 формат, введя в N2 , и заполните вниз:
Сортировать по столбцу N
Explaination
С SUBSTITUTE помощью точки . с 6 пробелами мы получаем следующее, чтобы их можно было правильно извлечь:
В настоящее время я работаю с большим списком IP-адресов (тысячи их).
Например, если я ввожу IP-адреса следующим образом:
И потом, если я сортирую по возрастанию, я получаю это:
Есть ли способ для меня, чтобы формат ячеек так, что, например, IP-адрес 17.255.253.65 появляется после 1.128.96.254 и до 103.236.162.56 при сортировке по возрастанию?
Если нет, есть ли другой способ для меня, чтобы достичь этой конечной цели?
Как вы уже поняли, вашего IP-адреса обрабатываются как текст, а не цифры. Они были отсортированы в виде текста, который означает, что адресов, начинающихся с "162" и придет до адресов, начинающихся с "20&.и" (потому что характер "и 1", которая идет перед символом "и 2" по.
Если ваши IP-адреса в столбцы, добавлять столбцов, как показано ниже.
в ячейки В2 и скопируйте его в столбцов во всех строках, чтобы получить четыре части каждого IP-адреса. Теперь вроде весь ряд столбиками б-е (именно в таком порядке), как показано ниже:
Самый простой, 3 шага решения я могу предложить вам.
Выберите столбец IP-адреса, подать заявку текст на колонки команда.
В соседнем столбце написать формулу
=Сцепить(Б3, то"." с,С3, и".”,в Д3, и".&я,Е3)
- Наконец-то отсортировать в порядке возрастания.
Проверьте снимок экрана.
Примечание:
Красный это исходный IP-адрес (в столбце a).
Зеленый после применения текста в столбце (столбце B до E).
Черный - после применения конкатенации & сортировки (столбец F).
Надеюсь, что это поможет вам.
Простой пример:
Вот ответ, который будет принимать только 1 столбец вашей таблицы и преобразует адреса IPv4 к основанию 10 нумерация.
Так как вы ставите ваши данные в колонке на "М" Ну, это начинается в ячейке м2 (М1 быть на этикетке). Инкапсуляция это как код дает один ужасный беспорядок, так что я использовал цитату:
=ИНТ(слева(м2, найти (и".&я, м2) - 1)) (середина(м2, найти (и quot 256 ^ 3 + ИНТ;." И, м2) + 1, найти (фильм"." и, М2, найти (фильм"." И, м2) + 1) - найти (фильм"." и, М2)-1)) (С середины(м2, найти (про 256 ^ 2 + ИНТ;." и, М2, найти (фильм"." И, м2) + 1) + 1, найти (фильм"." и, М2, найти (фильм"." и, М2, найти (фильм"." И, м2) + 1) + 1) - найти (фильм"." и, М2, найти (фильм".&я, м2) + 1) - 1)) право(м2, лен(м2) - найти (я* 256 + ИНТ (&;." и, М2, найти (фильм"." и, М2, найти (фильм"." И, м2) + 1) + 1)))
Не самый легко читаемый формула, но вы можете просто скопировать и вставить в ваш мобильный (предпочтительно N2 или что-то еще в том же ряду, первый IP-адрес). Он предполагает правильное форматирование IP-адреса, исправление ошибок в Формуле было бы еще хуже для человека парсинга.
В настоящее время я работаю с большим списком IP-адресов (их тысячи).
Однако, когда я сортирую столбец, содержащий IP-адреса, они не сортируются интуитивно понятным или простым способом.
Например, если я введу IP-адреса следующим образом:
И тогда, если я сортирую в порядке возрастания, я получаю это:
Можно ли отформатировать ячейки так, чтобы, например, IP-адрес 17.255.253.65 появлялся после 1.128.96.254 и до 103.236.162.56 при сортировке в порядке возрастания?
Если нет, есть ли другой способ для меня достичь этой конечной цели?
Это интересно - я был почти уверен, что формат ячейки повлияет на сортировку в некоторых случаях, и подумал, что это может быть одним из них. Благодарю за разъяснение! И Брюс поможет вам, если что-то из этого потребуется для обработки адресов IPv6!Как вы, возможно, поняли, ваши IP-адреса рассматриваются как текст, а не как числа. Они сортируются как текстовые, что означает, что адреса, начинающиеся с «162», будут предшествовать адресам, начинающимся с «20». (потому что символ «1» предшествует символу «2».
Если ваши IP-адреса находятся в столбцах A, добавьте столбцы BE, как показано ниже.
в ячейке B2 и скопируйте его в столбцы BE во всех строках, чтобы получить четыре части каждого IP-адреса. Теперь рассортируйте весь диапазон по столбцам от B до E (в указанном порядке), как показано ниже:
Если вы не хотите видеть вспомогательные столбцы (BE), вы можете их скрыть.
Вместо разделения на четыре столбца, может быть, было бы лучше «объединить» байты, как first*256^3+second*256^2+third*256+fourth в одном столбце? Тем более, что адреса IPv4 на самом деле являются просто 32-битными числами. Четырехразрядный способ отображения IP-адресов предназначен исключительно для удобства чтения. @Kat Я согласен, что это сработает, и для этого требуется только один вспомогательный столбец вместо четырех. Но формула в этом одном столбце будет довольно длинной, поэтому я решил использовать четыре столбца (я, вероятно, скрыл бы их в любом случае).Самое простое, трехэтапное решение, которое я могу предложить вам .
Выберите столбец IP-адрес, примените текст к столбцу команду « .
В соседней колонке напишите эту формулу
= СЦЕПИТЬ (В3, "", С3, "", D3, "", Е3)
Наконец сортировка в порядке возрастания.
Проверьте снимок экрана.
NB:
красный - это оригинальный IP-адрес (в столбце A).
зеленый после применения текста к столбцу (столбец от B до E).
черныйПосле нанесения цвета происходит конкатенация и сортировка (столбец F).
Причина заключается в том, что изначально IP-адрес очень прост: текстовые данные, и Excel не принимает формат ячейки, чтобы превратить его в номер.
Надеюсь, это поможет вам.
Это ужасно Вы никогда не хотите смешивать данные из разных строк. Он означает, что вы должны были включить исходный столбец A в сортировку, чтобы адреса iP были одинаковыми в каждой строке. Нет ,, ничего плохого я не сделал ,, требование ОП состояло в том, чтобы отсортировать IP-адрес в естественном порядке ,, (число), а столбец А в КРАСНОМ не отсортирован. Столбец F имеет отсортированный IP-адрес в черном цвете. +1 Это самое простое решение на странице. @RajeshS, возможно, измените слово «скорректированный» на «соседний» в вашем ответе - я думал, что вы имели в виду один из Text To Column столбцов там. @MaxW, макет только для демонстрации. Если вы хотите, чтобы исходный IP-адрес был отсортирован, просто пропустите шаг 2. Эту массивную формулу «VALUE (TRIM (MID (SUBSTITUTE») в принятом ответе следует заменить на «Текст в столбцы», а остальная часть ответа по сути такая же, как эта.Вот функция VBA, которую я написал некоторое время назад для решения той же проблемы. Он генерирует версию IPv4-адреса с добавками, которая сортируется правильно.
Простой пример:
Вы можете отсортировать по столбцу «Сортируемый» и скрыть его.
Я просто хочу отметить, что сортируемый IP-адрес будет анализироваться как отличный от исходного (потому что какой-то идиот решил интерпретировать его как восьмеричный). Так что используйте их только для сортировки и не рассматривайте их как надлежащие IP-адреса. Если вы собираетесь вытащить vba, почему бы просто не выполнить сортировку vba @RichardTingle 1. Это (немного) больше работы 2. Я мог бы хотеть отсортировать список несколькими различными способами в разные моментыВот ответ, который займет только 1 столбец вашей таблицы и преобразует адрес IPv4 в нумерацию с основанием 10.
Поскольку вы помещаете свои данные в столбец «M», это начинается в ячейке M2 (метка M1). Инкапсуляция в виде кода дает один ужасный беспорядок, поэтому я использовал blockquote:
= INT (ВЛЕВО (M2, FIND (".", M2) - 1)) * 256 ^ 3 + INT (MID (M2, FIND (".", M2) + 1, FIND (".", M2, FIND) (".", M2) + 1) - FIND (".", M2) -1)) * 256 ^ 2 + INT (MID (M2, FIND (".", M2, FIND (".", M2) + 1) + 1, FIND (".", M2, FIND (".", M2, FIND (".", M2) + 1) + 1) - FIND (".", M2, FIND ("." , M2) + 1) - 1)) * 256 + INT (ВПРАВО (M2, LEN (M2) - НАЙТИ (".", M2, НАЙТИ (".", M2, НАЙТИ (".", M2) + 1 ) + 1)))
Не совсем легко читаемая формула, но вы можете просто скопировать и вставить в свою ячейку (предпочтительно N2 или что-то еще в той же строке, что и ваш первый IP-адрес). Это предполагает правильное форматирование IP-адреса, так как исправление ошибок в формуле сделает его еще хуже при разборе человеком.
Если вы не хотите использовать формулы или VBA, используйте Power Query. (В Excel 2016, Get & Transform, в Excel 2010 или 2013 установите надстройку PowerQuery, чтобы следовать ей).
- Перенесите таблицу в редактор PowerQuery.
- Дублируйте столбец, щелкнув правой кнопкой мыши «Дублировать столбец»
- «Разделить столбец» разделителем на вкладке «Главная». Выберите «Каждое вхождение разделителя»
- Сортировать каждый столбец Asc. слева направо.
- Выберите ранее разделенные столбцы, щелкните правой кнопкой мыши и удалите, закройте и загрузите.
Это похожая строка, которая преобразует октеты в 3-значные поля, что позволяет выполнять надлежащую сортировку.
10.1.0.15 становится 10001000015 .
Чтобы сортировка работала, вы должны также дополнить первый октет начальными нулями.Как показано в вопросе, в столбце M указаны IP-адреса (IPv4), начиная с M2.
Получив хорошие ответы от каждого, вот мое решение. Требуется только 1 вспомогательный столбец. Мы пытаемся отформатировать адреса IPv4 в 012.198.043.009 формат, а затем отсортировать их:
- 12.198.43.9 чтобы 12 198 43 9 потом 012.198.043.009
Отформатируйте адреса IPv4 в 012.198.043.009 формат, введя в N2 , и заполните вниз:
Сортировать по столбцу N
Explaination
С SUBSTITUTE помощью точки . с 6 пробелами мы получаем следующее, чтобы их можно было правильно извлечь:
Читайте также: