Řazení adres IP v aplikaci Access

Poznámka: Snažíme se pro vás co nejrychleji zajistit aktuální obsah nápovědy ve vašem jazyce. Tato stránka byla přeložena automaticky a může obsahovat gramatické chyby nebo nepřesnosti. Naším cílem je to, aby pro vás byl její obsah užitečný. Mohli byste nám prosím dát ve spodní části této stránky vědět, jestli vám informace v článku pomohly? Pokud byste se rádi podívali na jeho anglickou verzi, najdete ji tady.

Toto téma popisuje postup při řazení adres Internet Protocol (IP) uložených v databázi aplikace Access.

Úvod

Pokud pracujete s IP adresy, pravděpodobně víte, že není co jednoduchých jako práce s textem nebo čísly. Důvodem je k IP adrese je skutečně kolekce čtyři číselných hodnot oddělených tečkou (.), kde každá hodnota je číslo od 0 do 255. Následující tabulka uvádí data před použitím žádné pořadí řazení.

Id_počítače

Employee (Zaměstnanec)

Umístění

Adresa IP

1

...

...

123.4.245.23

2

...

...

104.244.253.29

3

...

...

1.198.3.93

4

...

...

32.183.93.40

5

...

...

104.30.244.2

6

...

...

104.244.4.1

Řazení adres IP v aplikaci Access je výzvu, protože aplikace Access neposkytuje zvláštní datový typ pro ukládání IP adres. Sice k IP adrese jenom kolekce čísel, nelze ukládat IP adres v číselném poli. Je to proto číselné pole podporuje pouze jeden desetinné čárky (.), že k IP adrese obsahuje tři tečky (.). To znamená, že je třeba uložit adresy v textovém poli.

Protože IP adresy ukládají v textovém poli, nelze použít tlačítka zabudovanou v aplikaci Access řazení adres smysluplně. Tlačítka pro seřazení vždy seřadit hodnoty výrazu v textovém poli v abecedním pořadí, i když se jedná o znaky čísla. Jinými slovy adresy se seřazenými podle první číslice a pak druhé číslice a tak dále, místo podle číselných hodnot, které tvoří adresu. Následující tabulka zobrazuje z předchozí tabulky v abecedním pořadí podle pole Adresa IP adres.

Id_počítače

Adresa IP

3

1.198.3.93

2

104.244.253.29

6

104.244.4.1

5

104.30.244.2

1

123.4.245.23

4

32.183.93.40

Adresy, které začínají písmenem 1 se zobrazují před adres, které začínají 2 atd. Následující tabulka uvádí adresy ve správné vzestupně.

Id_počítače

Adresa IP

3

1.198.3.93

4

32.183.93.40

5

104.30.244.2

6

104.244.4.1

2

104.244.253.29

1

123.4.245.23

Chcete-li srozumitelnější kroky při řazení tyto adresy, můžete rozdělí IP adresy čtyři číselné části. Adresy musí seřazené podle první část pak pro jednotlivé hodnoty v první část pak podle druhé části atd. V tabulce jsou uvedeny každou část do jiného sloupce a, protože sloupce podržte jednoduché číselné hodnoty, bude možné k seřazení sloupce zleva doprava ve vzestupném pořadí, jak je uvedeno v následující tabulce.

Sloupce části

ČástII

ČástIII

PartIV

1

198

3

93

32

183

93

40

104

30

244

2

104

244

4

1

104

244

253

29

123

4

245

23

Řazení čtyři části samostatně je vtip za řazení adres IP. V následujícím postupu vytvoříte dotaz obsahující, kromě pole IP adresa čtyři počítané sloupce, kde každý sloupec obsahuje část hodnot adresy. První počítaný sloupec bude obsahovat číselné první část adresy, druhý počítaný sloupec bude obsahovat druhý číselnou část adresy a tak dál. Místo řazení záznamů podle pole Adresa IP, dotaz se záznamy řadit podle čtyř počítaných sloupců.

Vytvoření dotazu

Vytvoříte výběrový dotaz s názvem Seřazené_adresy_ip, která se zobrazí záznamy ve vzestupném pořadí IP adres. Předpokládejme, že aktuální databáze obsahuje tabulku s názvem Podrobnosti_o_počítačích obsahuje textové pole s názvem adresa IP.

  1. Klikněte na vytvořit > Návrh dotazu. Poznámka: Pokud používáte aplikaci Access 2007, klikněte na kartě Vytvoření ve skupině jiné na Návrh dotazu.

  2. V dialogovém okně Zobrazit tabulku na kartě tabulky klikněte na Podrobnosti_o_počítačích a potom klikněte na Přidat. Zavřete dialogová okna.

  3. Přetáhněte pole Id_počítače a adresa IP do návrhové mřížky dotazu.

  4. Teď jste připraveni přidat počítané sloupce. Do prvního prázdného sloupce na pravé straně zadejte výraz sloupce části: Val(Left([Adresa_IP],(InStr(1,[Adresa_IP],".") -1))) v řádku pole. Výraz vrátí znaky před prvním tečka (.) v poli Adresa IP.

    Teď zkontrolujte výraz. Protože neznáte, kolik číslic tvoří první část adresy, můžete použít funkce InStr můžete najít pozici prvního období. Odečtení 1 (aby se vyloučila období) vrátí počet číslic v první část. Potom použijte toto číslo s funkce Left extrahujte tak velký počet znaků počínaje první znak v poli Adresa IP. Nakonec zavolejte funkce Val k převodu znaky vrácené funkcí vlevo na číslo. Tento poslední krok totiž potřebné původní datový typ Text.

  5. Uložte dotaz kliknutím na Uložit na panelu Nástrojů Rychlý přístup. Je vhodné provést po každém mezilehlého kroku.

  6. Přidání sloupce do druhé části adresu. Do sloupce napravo od sloupce části zadejte ČástII: Val(Mid([Adresa_IP],InStr(1,[Adresa_IP],".") +1,InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") -InStr(1,[IPAddress],".") -1)) v řádku pole. Výraz vrátí znaky, které jsou umístěné mezi prvním a druhým období v poli Adresa IP.

    Ještě jednou zkontrolujte výraz. Vzhledem k tomu, že nevíte, kolik číslic tvoří druhé části adresy nebo přesně kdy začíná druhé části (protože nevíte, jak dlouho je první část), použijte funkci InStr zobrazíte pozice teček. Potom použijete funkce Mid extrahovat znaky, které následují za první období ale před druhého období. Nakonec zavolejte funkce Val k převodu znaky vrácené funkcí část na číslo. Tento poslední krok totiž potřebné původní datový typ Text.

  7. Přidání sloupce pro třetí část adresy. Do sloupce napravo od ČástII zadejte ČástIII: Val(Mid([Adresa_IP],InStr(InStr(1,[Adresa_IP],".") +1,[IPAddress],".") +1,InStr(InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") +1,[IPAddress],".") -InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") -1)) v řádku pole. Výraz vrátí znaky, které jsou umístěné mezi druhé a třetí období v poli Adresa IP.

    Ještě jednou zkontrolujte výraz. Vzhledem k tomu, že nevíte, kolik číslic tvoří třetí část adresy nebo přesně kde třetí část začíná (protože nevíte, jak dlouho je první a druhé části), použijte funkci InStr zobrazíte pozice teček. Chcete-li extrahovat znaky, které podle druhé období, ale před třetí tečkou pak použijte funkci část . Nakonec zavolejte funkce Val k převodu znaky vrácené funkcí část na číslo. Tento poslední krok totiž potřebné původní datový typ Text.

  8. Přidáte sloupec k čtvrtý a poslední část adresy. Do sloupce napravo od ČástIII zadejte PartIV: Val(Right([Adresa_IP],LEN([Adresa_IP])-InStr(InStr(InStr(1,[Adresa_IP],".") +1,[IPAddress],".") +1,[IPAddress],"."))) v řádku pole. Výraz vrátí následující znaky budou převedeny posledním obdobím.

    Ještě jednou zkontrolujte výraz. Klávesa má najděte umístění třetí období a extrahujte všechny znaky, které následují za ho. Protože nevíte přesně kde třetí období nachází, zavoláte funkce InStr třikrát můžete najít pozici třetího období. Potom použijete funkce Len Chcete-li vypočítat počet číslic ve čtvrtém části. Počet číslic vrácené se pak používá s funkce Right extrahujte tak velký počet znaků z pravé části pole Adresa IP. Nakonec zavolejte funkce Val k převodu znaky vrácené funkcí část na číslo. Tento poslední krok totiž potřebné původní datový typ Text.

  9. Nastavte řádku Řadit všechny čtyři počítaných sloupců na Vzestupně.

    Důležité    Řádku Řadit sloupce Adresa IP musí být prázdné.

    Pokud chcete řadit podle jiné hodnoty polí kromě adres, vložte pole na vlevo nebo vpravo od všechny čtyři počítaných sloupců. Neukládejte řazení polí mezi počítaných sloupců.

  10. Dalším krokem je skryjete čtyři počítané sloupce z datového listu. Ale před se přepněte do zobrazení datového zobrazíte výsledkem výrazů v počítaných sloupcích. Následující tabulka zobrazuje sloupce, že které se objeví v zobrazení Datový list.

    Id_počítače

    Adresa IP

    Sloupce části

    ČástII

    ČástIII

    PartIV

    3

    1.198.3.93

    1

    198

    3

    93

    4

    32.183.93.40

    32

    183

    93

    40

    5

    104.30.244.2

    104

    30

    244

    2

    6

    104.244.4.1

    104

    244

    4

    1

    2

    104.244.253.29

    104

    244

    253

    29

    1

    123.4.245.23

    123

    4

    245

    23

  11. Přejděte zpět do návrhového zobrazení a zrušte zaškrtnutí políčka v řádku Zobrazit všechny čtyři počítaných sloupců. Toto počítané sloupce zabraňuje zobrazení v zobrazení Datový list.

  12. Volitelně určete kritéria pro vyloučení záznamů z dotazu.

  13. Přepněte do zobrazení datového listu záznamy seřazená zobrazíte. Zobrazí se záznamy správně seřazené vzestupně podle IP adres.

Další použití seřazené IP adres

Ověření IP adresy při zadávání dat

Pokud chcete ověřit adresy bez psaní kódu, který můžete to udělat v omezené míře nastavením vlastnosti Vstupní maska pole #. ###. ###. ###; 0; " " a vlastnost Formát pole IP adresa na & & & & & & & & & & & &.

Vstupní masky k čemu slouží? Když začnete psát do pole Adresa, vstupní masky zabrání zadávání znaků, než čísel a mezer mezi tři tečky. Při číselné část dvěma číslicemi v čitateli číslo, ponechejte třetí číslici prázdné nebo napište mezeru místo. Všimněte si, že tento vstupní masky bez varování uživatel pokud vynechá zadání jedné nebo více částí adresy nebo typy pouze mezery místo číselné hodnoty. Například "345.. 3. "by se dají přijímat jako platná adresa.

Formát zobrazení k čemu slouží? Po dokončení zadávání a nechejte pole formát zobrazení odebere mezery v adrese a zobrazí ale jenom čísla a období. Ano, pokud jste zadali "354.35.2.12", adresa je zobrazena jako "354.35.2.12". Poznámka: Pokud Klikněte dovnitř adresy nebo stisknutím klávesy F2 (do režimu úprav) vybrán adresy se znovu zobrazí mezery.

Tip: Pokud chcete kopírovat adresu, přejděte na předchozí sloupec nebo ovládací prvek, stisknutím klávesy TAB vyberte formátovaný adresu a potom klikněte na Kopírovat. Tímto způsobem, nebudou zkopírujte adresu řetězec, který obsahuje mezery.

Řazení záznamů s formulářem nebo sestavou IP adresy

Pokud potřebujete vytvořit formulář nebo sestavu, ve kterém jsou záznamy seřazené podle IP adresy, založte nový objekt na dotaz, který seřadí adresy jak bylo popsáno dříve, místo v tabulce, který ukládá adresy.

Začátek stránky

Rozšiřte své dovednosti s Office
Projít školení
Získejte nové funkce jako první
Připojte se k účastníkům programu Office Insiders

Byly tyto informace užitečné?

Děkujeme vám za zpětnou vazbu.

Děkujeme vám za váš názor. Vypadá to, že bude užitečné, když vás spojíme s některým z našich agentů z podpory Office.

×