我想更改以下内容
123456789A1
到
123-456-789 A1
背景:
在格式单元格中,我使用了这个:
000-0000-00 00
如果单元格中的所有内容都是数字,则可以使用
12345678911
将成为
123-4567-89 11
但是很快就会有一封信,它打破了它。 如何更改类型以忽略字母?
答案 0 :(得分:0)
这是一个例子:
Sub test()
a = [A1]
b = Left(a, 3) & "-" & Mid(a, 4, 3) & "-" & Mid(a, 7, 3) & " " & Right(a, 2)
[A2] = b
End Sub
但是想要在第二个位置使用3个或4个数字吗?
如果A1 = 123456789A1,则A2:123-456-789 A1
答案 1 :(得分:0)
单元格编号格式仅适用于数字。
如果您不介意将值更改为文本字符串,可以使用Format
函数在VBA中格式化它们。例如:
Option Explicit
Sub FMT()
Dim R As Range, C As Range
Const sFMT As String = "@@@-@@@@-@@ @@"
Set R = Intersect(Range("A:A"), ActiveSheet.UsedRange)
For Each C In R
C.Value = Format(C.Text, sFMT)
Next C
End Sub
您需要更改范围参数以匹配您需要的参数。您还可以在事件触发的宏中使用它来自动执行此操作。