我有一个Excel文件,其中包含多个客户的完整邮寄地址,我需要填写一个只包含5位邮政编码的列,这些邮政编码始终遵循相同的州名缩写," TX。&#34 ;有时会在邮政编码后面添加一个'电话号码,有时它不是。
如果有办法在TX
之后选择5位数并将该信息移到新单元格,直到最后一行,我还没有找到它。我对VBA来说是全新的,只需要一次性的工作。示例:
D3有Namey Name Streety Street TX 75029 432-239-2490
D4有Namity Names Streetick Street TX 73902
我想将75029
分别移至F3,将73902
移至F4。
答案 0 :(得分:3)
“对于一次性工作”VBA似乎有点矫枉过正,甚至没有必要的公式。只需将ColumnD复制到ColumnF中,选择ColumnF并使用替换...(HOME>编辑,查找和替换),查找内容:
*TX
(X
后面有空格)
全部替换,然后查找内容:
*
(*
之前有一个空格)
全部替换。
答案 1 :(得分:1)
像这样的excel公式?
=MID(D3,FIND(" TX ",D3)+4,5)
在F3中然后向下拖动
答案 2 :(得分:0)
将s替换为您的输入并将zip放在您想要的位置。
Dim s As String
Dim idx As Long
Dim zip As String
s = "Namey Name Streety Street TX 75029 432-239-2490"
idx = InStr(1, UCase(s), " TX ")
If idx > 0 Then
zip = Mid(s, idx + 4, 5)
Else
zip = "Not found"
End If