【问题标题】:EXCEL - How to create a custom cell format for an Australian phone number: xxxx-xxx-xxxEXCEL - 如何为澳大利亚电话号码创建自定义单元格格式:xxxx-xxx-xxx
【发布时间】:2018-12-19 13:31:04
【问题描述】:

澳大利亚的手机(手机)和固定电话号码都是10位数字,都以零开头。

当我将电话号码输入格式为数字的 Excel 单元格时,它会去掉前导零。例如0412555666 变为 412555666。将单元格设置为文本格式会保留前导零。

我希望用户能够输入电话号码,保持前导零不变,并将格式显示为例如'0412-555-666'

我尝试了自定义格式0####"-"###"-"###,但是如果单元格是文本,格式将失败,如果我将其更改为数字,则从输入中删除前导 0。

附: 我知道我可以使用公式=IF(LEN(A1)=10,CONCATENATE(MID(A1, 1, 4), "-", MID(A1, 5, 3), "-", MID(A1, 8, 3)), "Invalid Number") 在电子表格中添加另一个字段,但我只想更改单元格的显示方式,而不是其内容。

【问题讨论】:

  • 0000-000-000 的自定义格式在这里应该足够了,Excel 在存储数字时总是会去掉前导零,因为它对值没有影响......您也可以使用 TEXT(0412555666,"0000-000-000") 但是这将像您的中间公式一样更改单元格中的值。我建议第一种情况,如果需要,您始终可以在每个小于 10 个字符的数字的开头附加一个 0

标签: excel excel-formula formatting office365 string-formatting


【解决方案1】:

只要您愿意输入 AU 10 位完整国家号码 (FNN) 中的至少 9 位,自定义号码格式就可以正确确定正确的陆地/移动号码格式。

选择接收电话号码的列,然后点击 Ctrl+1。移动到数字选项卡,然后从左侧列表中选择自定义。使用以下类型。

[>600000000]00 0000 0000;[>400000000]0000 000 000;00 0000 0000;[red]@

手机将采用 XXXX XXX XXX 格式,固定电话将采用 XX XXXX XXXX 格式,任何恶意文本输入都将显示为红色。

如果您使用 VBA 将这些发送到调制解调器或其他拨号器,请使用单元格 .Value 或 .Value2 属性。如果您需要格式化的电话号码用于报告或类似内容,请使用单元格 .Text 属性检索它。

【讨论】:

    【解决方案2】:

    您可以在单元格中写入“'0412555666”(在数字前添加 '),而不是在单元格中写入“0412555666”,这也保持零并在下一个单元格导入中:

    =LEFT(A1,4) & "-"  & MID(A1,5,3) & "-" & RIGHT(A1,3)
    

    图片展示:

    【讨论】:

      猜你喜欢
      • 2016-06-04
      • 2013-03-19
      • 2017-10-25
      • 1970-01-01
      • 2014-03-01
      • 2021-01-01
      • 2011-09-02
      • 2015-06-04
      • 1970-01-01
      相关资源
      最近更新 更多