IP地址

时间:2016-08-17 12:07:40

标签: excel vba

所以这是我的问题。当我在excel中输入10.100.100.10时,它非常好。如果我键入10.100.100.100或任何其他数字更多的数字excel自动摆脱点。我可以通过将单元格格式替换为文本来解决这个问题。但这引出了另一个问题。格式更改后我必须再次添加点,由于我使用的文件的性质,这不是很容易。即使我这样做,当我尝试用10.100.900查找/替换例如10.100.100时,所有的点都会被删除。

注意:我在替换时尝试修复单元格格式,但是没有用。 注2:我的电脑和Excel是64位。

谢谢!

3 个答案:

答案 0 :(得分:2)

您可以使用VBA自动切换千位分隔符。

通过ALT + F11打开VBA编辑器 在左侧的项目窗口中双击ThisWorkbook 在打开的文本窗口中粘贴此代码:

Private Sub Workbook_BeforeClose(Cancel As Boolean)
    With Application
        .UseSystemSeparators = True
    End With

End Sub

Private Sub Workbook_Open()
    With Application
        .ThousandsSeparator = ","
        .UseSystemSeparators = False
    End With

End Sub

当您关闭时,打开工作簿并将其重置为“默认”时,这将使“,”成为Excel的千位分隔符。
请记住,如果您打开了两个工作簿,这可能会导致其他工作簿发生冲突,或者由于某种原因导致Excel崩溃。
如果它确实崩溃,请重新打开此工作簿并再次关闭它(除非您需要继续使用它) 需要记住的重要一点是,需要关闭工作簿才能重置Excel的设置。

EDIT;添加代码后,您需要将文件保存为Excel文件和Excel文件(不记得正确的名称),然后关闭并重新打开它。

答案 1 :(得分:0)

如果您要复制并粘贴此ID地址,则应按crtl + w以便Excel获取单元格的值而不是其他文档中的单元格。这有助于错误的数字我被格式化为日期。

如果您手动输入地址,则应在插入IP地址之前格式化整个列或行,这可能有所帮助。

最后一种可能性是编写一个宏,如果列中的某些内容发生更改,则会自动启动该宏,然后它应该为您插入点。

答案 2 :(得分:0)

谢谢大家放一个'在数字作为魅力之前。