我当时正在处理一个包含 IP 地址的 Excel 文档。其中一些是数字格式,当我以文本格式将它们加载到数据库中时,它们会丢失所有点,地址变得毫无用处。
我一直在寻找正确的函数来将数字转换为文本而不丢失点,但我找不到任何东西。正确的函数是什么?
例如,我有这个数字格式的 IP:
15.243.21.1
当我尝试将其转换为文本时,我得到的是:
15243211
答案1
我用来修复它的函数是这个。TEXT(Cell;"#.##0")
之后单元格格式可以是数字,但内容是文本,将单元格格式更改为文本后,内容保留了它们的点。
答案2
在我看来,IP 地址始终是一个仅使用0
和书写的大二进制数1
。
在您的 IP 地址15.243.21.1
转换为二进制数字时
- 15:
00001111
- 243:
11110011
- 21:
00010101
- 1:
00000001
所以它是一个 32 位 IP 地址系统
因此文本格式的 IP 地址将是所有这四位数字的组合。
因此将会是:
00001111111100110001010100000001
推导过程非常简单,您可以在 Excel 中编写公式,将您的 IP 地址转换为二进制地址。硬件仅理解0
和1
。0
表示位关闭,1
表示位设置为打开。
因此,无论整个计算机硬件是什么,发送的信号都是0
和1
的序列。但您在屏幕或打印机上看到的内容又被转换回可读形式。