Mam listę adresów IP w następującej formie:
010.125.015.013
010.125.153.012
010.125.012.135
Nie mogę wykonać polecenia ping za pomocą tego formularza, ponieważ system Windows uważa, że jest to ósemkowa kropka. Muszę usunąć wiodące zera po każdej kropce.
To nie jest takie proste, ponieważ niektóre z nich w ogóle nie mają początkowych zer po kropkach, a niektóre mają go tylko w ostatnim oktecie, a niektóre w trzecim lub w obu.
Chyba że istnieje rozwiązanie wymuszające interpretację polecenia ping jako dziesiętny kropkowy adres IP.
Czy ktoś może pomóc?
Dzięki
networking
microsoft-excel
Michał
źródło
źródło
123.234.000.276
? (Tak, fałszywy przykład.)^0
(dopasuj zero na początku łańcucha!)Odpowiedzi:
Oto, co możesz zrobić:
Zakładam, że każdy adres IP znajduje się w jednej komórce jako tekst. Teraz przekonwertuj tę pojedynczą komórkę na kolumny (za pomocą funkcji zamiany tekstu na kolumny), określając
.
(kropka) jako separator. Będą teraz rozprowadzane jako liczby w kolejnych 4 kolejnych komórkach, wiodące zero powinno zniknąćUżyj funkcji konkatenacji (szczegóły w pomocy programu Excel i dołącz 4 cyfry, umieszczając
.
po każdym łańcuchu. Teraz powinieneś mieć komórkę o tym samym adresie IP z wyłączeniem wszystkich zer wiodących.źródło
Co powiesz na
źródło
Ten używa
SUBSTITUTE
:Najpierw przycina puste miejsce wokół adresu IP (in
C5
), dodaje prefiks@.
, zastępuje.0
go.
dwukrotnie, a następnie usuwa dodany prefiks@.
.źródło
TRIM
aby upewnić się, że nie zostawisz żadnej białej przestrzeni (... i nadal jak dotąd zwycięski codegolf! ;-D)Pobity na czas (muszę tłumaczyć formuły z włoskiego na angielski ... również pozbywam się tylko LibreOffice ...) W każdym razie, zakładając, że adresy IP są w kolumnie A, sugerowałbym to:
źródło
;
jednak,
jako separatora parametrów formuł, więc trzeba je zmienić - między innymi we Włoszech używamy przecinka (nie kropki) jako separatora części dziesiętnej liczb. Wreszcie, używam Excela w pracy, ale w domu mam tylko LibreOffice i muszę przyznać, że nie jest tak dobrze udokumentowany jak Excel (zawsze mam nadzieję, że nazwy formuł pozostają takie same między nimi) i zdecydowanie brakuje w nim kilku fajnych funkcji ....
w LibreOffice, podczas gdy w Excelu należy użyć!
zamiast tego ('Sheet 1'.A1
<=>'Sheet 1'!A1
).