如果包含特定值,则将值从一列复制到另一列
原始图像.. http://screencast.com/t/jk3IIbuuV
需要从〜500行中获取5种types的数据并粘贴到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”和“诊所名称”信息的行。