状态缩写后提取邮政编码

我有一个带有几个客户的完整邮件地址的Excel文件,我只需填写一个只有5位数字的邮政编码,这个邮政编码始终遵循相同的州名缩写“TX”。 有时在邮政编码后面加上一个电话号码,有时候不是。

如果有一种方法可以在TX之后select5位数字,并将该信息移动到一个新的单元格,直到最后一行,我还没有find它。 我对VBA来说是全新的,只需要一次性的工作。 例:

D3有Namey Name Streety Street TX 75029 432-239-2490
D4有Namity Names Streetick Street TX 73902

我想把75029移到F3和73902到F4。

“一次性工作”VBA似乎矫枉过正,甚至没有必要的公式。 只需将ColumnD复制到ColumnF中,selectColumnF并使用Replace …(HOME> Editing,Find&Replace),find:

*TX

X之后有一个空格),

全部replace ,然后查找内容:

*

*之前有一个空格)

全部replace

像这样的excel公式?

 =MID(D3,FIND(" TX ",D3)+4,5) 

在F3然后向下拖动

用你的inputreplaces,并把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