Applies ToAccess untuk Microsoft 365 Access 2024 Access 2021 Access 2019 Access 2016

Topik ini menguraikan prosedur pengurutan alamat Internet Protocol (IP) yang disimpan dalam database Access .

Pendahuluan

Jika Anda bekerja dengan alamat IP, Anda mungkin sudah tahu bahwa itu tidak sesering bekerja dengan teks atau angka. Ini karena alamat IP benar-benar kumpulan empat nilai numerik yang dipisahkan oleh tanda titik (.), di mana setiap nilai adalah angka antara 0 dan 255. Tabel berikut ini memperlihatkan data sebelum urutan apa pun diterapkan.

ID Mesin

Karyawan

Lokasi

IPAddress

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

Mengurutkan alamat IP di Access merupakan tantangan karena Access tidak menyediakan tipe data khusus untuk menyimpan alamat IP. Meskipun alamat IP hanyalah kumpulan angka, Anda tidak dapat menyimpan alamat IP dalam bidang numerik. Ini karena bidang numerik hanya mendukung satu titik desimal (.), sedangkan alamat IP berisi tiga titik (.). Artinya, Anda harus menyimpan alamat dalam bidang teks.

Karena Anda menyimpan alamat IP dalam bidang teks, Anda tidak dapat menggunakan tombol pengurutan bawaan di Access untuk mengurutkan alamat dengan cara yang bermakna. Tombol urutkan selalu mengurutkan nilai dalam bidang teks dalam urutan alfabet, meskipun karakternya adalah angka. Dengan kata lain, alamat diurutkan menurut digit pertama, lalu menurut digit kedua, dan seterunya, bukan oleh nilai numerik yang menyusun alamat. Tabel berikut ini memperlihatkan alamat dari tabel sebelumnya yang diurutkan dalam urutan alfabet pada bidang IPAddress.

ID Mesin

IPAddress

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

Alamat yang dimulai dengan 1 ditampilkan sebelum alamat yang dimulai dengan 2, dan seterunya. Tabel berikut ini memperlihatkan alamat dalam urutan naik yang benar .

ID Mesin

IPAddress

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

Agar lebih mudah memahami langkah-langkah yang dilibatkan dalam pengurutan alamat ini, Anda memecah alamat IP menjadi empat bagian numerik. Alamat harus diurutkan menurut bagian pertama, lalu untuk setiap nilai di bagian pertama, lalu menurut bagian kedua, dan seterusnya. Tabel memperlihatkan setiap bagian dalam kolom yang berbeda dan, karena kolom berisi nilai numerik sederhana, dimungkinkan untuk mengurutkan kolom dari kiri ke kanan dalam urutan naik, seperti yang diperlihatkan dalam tabel berikut ini.

Parti

PartII

PartIII

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

Mengurutkan empat bagian secara terpisah adalah trik di balik pengurutan alamat IP. Dalam prosedur berikut ini, Anda membuat kueri yang, selain bidang alamat IP, menyertakan empat kolom terhitung di mana setiap kolom menyimpan bagian dari nilai alamat. Kolom terhitung pertama akan menampung bagian numerik pertama dari alamat, kolom terhitung kedua akan menampung bagian numerik kedua dari alamat, dan sebagainya. Alih-alih mengurutkan rekaman menurut bidang IPAddress, kueri akan mengurutkan rekaman menurut empat kolom terhitung.

Membuat kueri

Anda akan membuat kueri pemilihan bernama IpAddresses terurut yang menampilkan rekaman dalam urutan naik alamat IP. Misalnya database saat ini memiliki tabel bernama MachineDetails yang menyertakan bidang teks bernama IPAddress.

  1. Klik BuatDesain Kueri >. 

  2. Pilih Tambahkan Tabel (Perlihatkan Tabel di Access) dan seret Detail Mesin ke bagian atas Tampilan Desain.

  3. Seret bidang MACHINEID dan IPAddress ke kisi desain kueri.

  4. Kini Anda siap untuk menambahkan kolom terhitung. Di kolom kosong pertama di sebelah kanan, ketik ekspresi PartI: Val(Left([IPAddress],(InStr(1,[IPAddress],".") -1))) dalam baris Bidang . Ekspresi mengembalikan karakter sebelum periode pertama (.) di bidang IPAddress.

    Sekarang, tinjau ekspresinya. Karena Anda tidak tahu berapa banyak digit yang menyusun bagian pertama alamat, Anda menggunakan fungsi InStr untuk menemukan posisi periode pertama. Mengurangi 1 (untuk mengecualikan periode) mengembalikan jumlah digit di bagian pertama. Anda kemudian menggunakan angka ini dengan fungsi Left untuk mengekstrak karakter sebanyak itu, dimulai dari karakter paling kiri, dari bidang IPAddress. Terakhir, Anda memanggil fungsi Val untuk mengonversi karakter yang dikembalikan oleh fungsi Left menjadi angka. Langkah terakhir ini diperlukan karena tipe data yang mendasar adalah Teks.

  5. Simpan kueri dengan mengklik Simpan di Bilah Alat Akses Cepat. Sebaiknya lakukan ini setelah setiap langkah menengah.

  6. Tambahkan kolom untuk bagian alamat kedua. Di kolom di sebelah kanan PartI, ketik PartII: Val(Mid([IPAddress],InStr(1,[IPAddress],".") +1,InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") -InStr(1,[IPAddress],".") -1)) di baris Bidang . Ekspresi mengembalikan karakter yang terletak di antara periode pertama dan kedua dalam bidang IPAddress.

    Sekali lagi, tinjau ekspresi. Karena Anda tidak tahu berapa banyak digit yang menyusun bagian kedua dari alamat atau persis di mana bagian kedua dimulai (karena Anda tidak berapa lama bagian pertama), Anda menggunakan fungsi InStr untuk menemukan posisi titik. Anda kemudian menggunakan fungsi Mid untuk mengekstrak karakter yang mengikuti periode pertama tetapi mendahului periode kedua. Terakhir, Anda memanggil fungsi Val untuk mengonversi karakter yang dikembalikan oleh fungsi Mid menjadi angka. Langkah terakhir ini diperlukan karena tipe data yang mendasar adalah Teks.

  7. Tambahkan kolom untuk bagian alamat ketiga. Di kolom di sebelah kanan PartII, ketik PartIII: Val(Mid([IPAddress],InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") +1,InStr(InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") +1,[IPAddress],".") -InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") -1)) di baris Bidang . Ekspresi mengembalikan karakter yang terletak di antara periode kedua dan ketiga dalam bidang IPAddress.

    Sekali lagi, tinjau ekspresi. Karena Anda tidak tahu berapa banyak digit yang menyusun bagian ketiga alamat atau persis di mana bagian ketiga dimulai (karena Anda tidak tahu berapa lama bagian pertama dan kedua), Anda menggunakan fungsi InStr untuk menemukan posisi periode. Anda kemudian menggunakan fungsi Mid untuk mengekstrak karakter yang mengikuti periode kedua tetapi mendahului periode ketiga. Terakhir, Anda memanggil fungsi Val untuk mengonversi karakter yang dikembalikan oleh fungsi Mid menjadi angka. Langkah terakhir ini diperlukan karena tipe data yang mendasar adalah Teks.

  8. Tambahkan kolom untuk bagian alamat keempat dan terakhir. Di kolom di sebelah kanan PartIII, ketik PartIV: Val(Right([IPAddress],Len([IPAddress])-InStr(InStr(InStr(1,[IPAddress],".") +1,[IPAddress],".") +1,[IPAddress],"."))) di baris Bidang . Ekspresi mengembalikan karakter yang mengikuti periode terakhir.

    Sekali lagi, tinjau ekspresi. Kuncinya adalah menemukan lokasi periode ketiga lalu mengekstrak semua karakter yang mengikutinya. Karena Anda tidak tahu persis di mana periode ketiga berada, Anda memanggil fungsi InStr tiga kali untuk menemukan posisi periode ketiga. Anda kemudian menggunakan fungsi Len untuk menghitung jumlah digit di bagian keempat. Jumlah digit yang dikembalikan kemudian digunakan dengan fungsi Right untuk mengekstrak karakter sebanyak itu dari bagian kanan bidang IPAddress. Terakhir, Anda memanggil fungsi Val untuk mengonversi karakter yang dikembalikan oleh fungsi Mid menjadi angka. Langkah terakhir ini diperlukan karena tipe data yang mendasar adalah Teks.

  9. Mengatur baris Urutkan dari keempat kolom terhitung ke Naik.

    Penting    Baris Urutkan dari kolom IPAddress harus dibiarkan kosong.

    Jika Anda ingin mengurutkan menurut nilai bidang lain, selain alamat, letakkan bidang di sebelah kiri atau kanan dari keempat kolom terhitung. Jangan letakkan bidang pengurutan lainnya di antara kolom terhitung.

  10. Langkah berikutnya adalah menyembunyikan empat kolom terhitung dari lembar data. Tapi sebelum Anda melakukannya, beralihlah ke tampilan Lembar Data untuk melihat hasil ekspresi dalam kolom terhitung. Tabel berikut ini memperlihatkan kolom yang akan Anda lihat dalam tampilan Lembar Data.

    ID Mesin

    IPAddress

    Parti

    PartII

    PartIII

    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. Beralih kembali ke tampilan Desain dan kosongkan kotak centang di baris Perlihatkan dari keempat kolom terhitung. Ini mencegah kolom terhitung ditampilkan dalam tampilan Lembar Data.

  12. Secara opsional, tentukan kriteria untuk mengecualikan rekaman dari kueri.

  13. Beralihlah ke tampilan Lembar Data untuk melihat catatan dalam urutan yang diurutkan. Anda akan melihat catatan yang diurutkan dengan benar dalam urutan naik alamat IP.

Penggunaan lainnya untuk alamat IP yang diurutkan

Memvalidasi alamat IP selama entri data

Jika ingin memvalidasi alamat tanpa menulis kode, Anda dapat melakukannya hingga batas tertentu dengan mengatur properti InputMask dari bidang menjadi ####.####; 0;" " dan properti Format bidang alamat IP untuk &&&&&&&&&&&&.

Apa fungsi masker input? Saat Anda mulai mengetik di bidang alamat, masker input mencegah Anda memasukkan karakter selain angka dan spasi di antara tiga tanda titik. Jika bagian numerik adalah angka dua digit, biarkan digit ketiga kosong atau ketik spasi sebagai gantinya. Perhatikan bahwa masker input ini tidak memperingatkan pengguna jika dia melewatkan satu atau beberapa bagian alamat, atau hanya mengetik spasi, bukan nilai numerik. Misalnya, "345. .3. " akan diterima sebagai alamat yang valid.

Apa fungsi format tampilan? Setelah selesai mengetik dan meninggalkan bidang, format tampilan akan menghapus spasi di alamat dan hanya menampilkan angka dan titik. Jadi, jika Anda mengetik "354.35 .2 .12 ", alamat ditampilkan sebagai "354.35.2.12". Perhatikan bahwa jika Anda mengklik di dalam alamat, atau menekan F2 (untuk memasukkan mode edit) saat alamat dipilih, spasi akan muncul kembali.

Tips: Jika Anda ingin menyalin alamat, pindahkan ke kolom atau kontrol sebelumnya, tekan TAB untuk memilih alamat yang diformat, lalu klik Salin. Dengan melakukan ini, Anda tidak akan menyalin string alamat yang berisi spasi.

Mengurutkan rekaman dalam formulir atau laporan menurut alamat IP

Jika Anda perlu membuat formulir atau laporan di mana catatan diurutkan menurut alamat IP, dasarkan objek baru pada kueri yang mengurutkan alamat seperti yang dijelaskan sebelumnya, bukan pada tabel yang menyimpan alamat.

Atas Halaman

Perlu bantuan lainnya?

Ingin opsi lainnya?

Jelajahi manfaat langganan, telusuri kursus pelatihan, pelajari cara mengamankan perangkat Anda, dan banyak lagi.

Komunitas membantu Anda bertanya dan menjawab pertanyaan, memberikan umpan balik, dan mendengar dari para ahli yang memiliki pengetahuan yang luas.