我需要帮助将地址拆分为Excel中的列。
COLUMN A中的地址写成:
601 W Houston St Abbott,TX 76621美国
13498 US 301 South Riverview,FL 33578美国
COLUMN B实际上是一个辅助列。它只包含COLUMN A中的城市名称。我的想法是以某种方式将COLUMN B与COLUMN A匹配,然后所有匹配移动到另一列。这会将City与地址分开。
State,Zip和Country我可以使用“split text to columns”,因为“逗号”是分隔符。但我需要帮助拆分地址和城市。
城市名称后面有一个“逗号”,但有些城市在城市名称中有多个单词。
我需要做的是分割地址,如下图中的绿色突出显示。
在Excel中执行此操作的最佳方法是什么?那个公式是什么?
答案 0 :(得分:0)
由于您已经在Col B中拥有City,只需在A
中替换城市D2 = SUBSTITUTE(A2,C2,“”)
C列在Col C中粘贴特殊值
使用逗号分割C列。
然后使用“空格”拆分列D.假设您拥有美国的所有记录,则可以根据需要将国家/地区添加到所有行。
EDIT 我错过了行中的城市名称与地址不对应。要匹配Master中的城市,您可以使用此数组公式:
C2 = INDEX(B:B,MATCH(1,MATCH(“”& $ B:$ B&“”,A2,0),0))
必须使用Ctrl-Shift-Enter确认数组公式。
然而,这将找到第一场比赛。如果你有城市福斯特&福斯特城的福斯特城永远不会匹配。因此,按照长度的降序对城市进行排序。
一旦你将城市名称匹配,你就可以按照我之前给出的步骤进行操作。请注意,我已调整公式以考虑此新公式匹配的城市名称。
答案 1 :(得分:0)
我们可以使用LOOKUP
的怪癖来实现这一目标。
=LOOKUP(1E+99,FIND(B$2:B$100,A2),B$2:B$100)
将基于在B列中搜索匹配来返回城市。请注意,这将需要指定要填充的B列的全部范围。
然后我们可以将=LEFT(A2,FIND(D2,A2)-2)
放在C2中以获取地址的第一部分。
如果我们可以假设州,Zip和国家的长度不变(如果你在美国之外有任何地址,那么你需要改变它),其余的很容易:
E2中的 =LEFT(RIGHT(A2,22),3)
=LEFT(RIGHT(A2,19),5)
=RIGHT(A2,13)
答案 2 :(得分:0)
因此,可以使用公式完成它。这可能不是最好的方式,但我得到了我需要的东西。
那就是它!