いきなり答える備忘録

Google Workspace(旧G Suite)・Microsoft 365・LibreOfficeなどに関するメモ

(Gスプレッドシート)IPアドレスを2進数表記に変換する

 Googleスプレッドシートで、10進数表記されているIPアドレス(IPv4アドレス)を2進数表記に変換する方法についてです。

  • SPLIT関数等を使ってIPアドレスを2進数表記に変換することができます。

手順

 B列に対象となるIPアドレスが入力されています。
 C3セルに式を入力し、下方にコピーすることでこれらのアドレスを2進数表記に変換しています。

 C3セル

=JOIN(".",ARRAYFORMULA(DEC2BIN(SPLIT(B3,"."),8)))

 SPLIT関数を使って4つのオクテットに分割し、DEC2BIN関数(とARRAYFORMULA関数)でそれぞれを8桁の2進数に変換し、最後にJOIN関数で再度ドットを挿んで結合しています。
 DEC2BIN関数に関してはBASE関数を使った方がわずかに短くできますが、まあ好みの問題といったところです。
 また、32桁のビット(0/1)だけが欲しい場合はJOIN関数の区切り文字を空文字にするかCONCATENATE関数に代えればOKです。