如果包含特定值,则将值从一列复制到另一列

在这里输入图像描述

原始图像.. http://screencast.com/t/jk3IIbuuV

需要从〜500行中获取5种types的数据并粘贴到5个单独的行中。 理想情况下,数据将如屏幕右侧所示转换。

  1. 诊所名称
  2. 诊所电子邮件地址
  3. 网站
  4. 代表的名字
  5. 诊所types

我想一些types的公式/macrossearch资金,另一个search@和返回string,另一个searchwww,另一个search项目符号点。 可能?

好吧,你只是给了你500行几行,所以我假设了一些模式:

我想我得到了“诊所名称”,“网站”和“电子邮件”

数据在列A 。 示例将显示一个单元格,但公式可重现的其他单元格(只需拖动它们)。

诊所名称。

转换大写string中的所有string。

 B1 =UPPER(A1) 

检查新string(B1)是否与原始string(A1)不同。

 C1 =IF(EXACT(A1,B1),A1,"") 

网站

跟踪“www。”的字符位置

 B1 =SEARCH("www.",A1,1) 

在“www”之后裁剪string

 C1 =MID(A1,B1,100) 

跟踪“.cl”的字符位置(假设您提供的所有示例都只有“.cl”才能完成网站)

 D1 =SEARCH(".cl",C1,1) 

replace“.cl”右边的所有内容(以防万一“.cl”中的string不完整),仅仅是“.cl”。

 E1 =REPLACE(C1,D1,100,".cl") 

电子邮件

与网站相同的想法,但现在,对原始数据做出更强的假设:
– 所有电话号码格式为(2)XXXX XXXX或(2)XXXX-XXXX;
– 电子邮件信息就在电话号码的右边。

 B1 =FIND("(2)",A1,1) C1 =MID(A1,B1,100) D1 =MID(K18,14,100) #remove the phone number (13 characters)# E1 =SEARCH(".cl",L18,1) F1 =REPLACE(D1,E1,100,".cl") 

我没有尝试收集“诊所types”,因为我无法在Excel上复制子弹(实际上,我从MS Word复制并粘贴子弹,但是我不确定它是否与您的数据格式相同)。 我的第一个尝试是使用公式B1 =left(A1,1)来提取每个string的第一个字符。 所有带子弹的文本/string可能都会有一个模式(相同的字符)。 然后,过滤select子弹字符的单元格,并复制/过去“诊所types”信息。

我不知道如何检索“联系人姓名”,但是根据我在这里提出的build议,可以删除“诊所types”和“诊所名称”信息的行。