Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/excel/27.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String 如何将带有字母数字值的文本从excel单元格导出到另一列?_String_Excel_Formulas - Fatal编程技术网

String 如何将带有字母数字值的文本从excel单元格导出到另一列?

String 如何将带有字母数字值的文本从excel单元格导出到另一列?,string,excel,formulas,String,Excel,Formulas,我在B列中有几个单元格条目。它们看起来类似于: 1050670||Target Optical 4226||6132||7132 1051752||Wal-Mart Vision Ctr 305095||6132||7132 1052470||Wal-Mart Vision Ctr 301891||6132||7132 1054354||Naval Ambulatory Care Ctr||6132||7132 我需要一个公式,只提取包含名称的文本。理想情况下,它只会给我留下: Targ

我在B列中有几个单元格条目。它们看起来类似于:

1050670||Target Optical  4226||6132||7132
1051752||Wal-Mart Vision Ctr  305095||6132||7132
1052470||Wal-Mart Vision Ctr  301891||6132||7132
1054354||Naval Ambulatory Care Ctr||6132||7132
我需要一个公式,只提取包含名称的文本。理想情况下,它只会给我留下:

Target Optical
Wal-Mart Vision Ctr
Wal-Mart Vision Ctr
Naval Ambulatory Care Ctr

非常感谢您的帮助。

如果您的条目之一在B1中,请使用公式

=MID(B1,FIND("||",B1)+2,FIND("||",B1,FIND("||",B1)+2)-FIND("||",B1)-2)
根据需要进行复制和粘贴。注意相对/绝对引用

当然,VBA还有其他选项,但您特别要求了一个公式

如果以后需要“| |”之间的项目,可以修改我发布的公式,但它可能会变得相当麻烦。VBA可以更简单。或者你可以用

=MID(B1,FIND(CHAR(1),SUBSTITUTE(B1,"|",CHAR(1),(A6-1)*2))+1,FIND(CHAR(1),SUBSTITUTE(B1,"|",CHAR(1),A6*2))-FIND(CHAR(1),SUBSTITUTE(B1,"|",CHAR(1),(A6-1)*2))-2)
它也很麻烦,但它适用于“任何”项目编号(当然有一个上限;我没有测试它)。 这是一个改编自。A6包含要拾取的项目。在你的情况下,它是2。如果输入三,则第一行获得“6132”。必须对该公式进行修改,以适当查找第一项或最后一项


编辑:这些公式不会删除目标字段末尾的数字。我错过了这一点,但我将留下答案,因为它可能对其他读者有用。请参阅Jeeped的解决方案。

如果要忽略文本伪字段中的数字,则必须仔细分析ASCII 48-57中字符的拆分值

B1中丑陋的公式是

=TRIM(LEFT(MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0, MIN(INDEX(ROW(INDIRECT("1:"&LEN(MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0)))+((CODE(MID((MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0),ROW(INDIRECT("1:"&LEN(MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0))),1))<48)+(CODE(MID(UPPER(MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0),ROW(INDIRECT("1:"&LEN(MID(A1, FIND("||", A1)+2, FIND("¶", SUBSTITUTE(A1, "||", "¶", 2))-FIND("||", A1)-2)&0))),1))>57))*1E+99,,))-1))
[代码><码><码>=修剪(左)左(中(中(中)中(中(中(中(中(中)1,寻找(中(中(中(中)中,寻找(1,寻找(1,寻找(1,寻找(124;124;;124;;124;124;;;;,A1)1)+2,发现,发现,发现,发现,发现,发现,发现(“”),替代(1,)替代(1)替代(1,)替代(1,,;;;;;;;;;;;;;;;;;;,,,,,,2),2)2)2)中-发现(中(中(中)发现(中(中(中)发现(中(中(中(中(中(中(中(中(中(中(中(中(中(中(中(中(中(中(中)中,寻找,寻找,寻找,寻找,寻找,找到,找到,找到,找到,发现,发现,发现(|,A1)-2)和0),行(间接(“1:&LEN(MID(A1,FIND(“| |,”,A1)+2,FIND(“”),替换(A1,“| |,”,2))-FIND(“| |,”,A1)-2)和0)),1)57))*1E+99,,)-1))
根据需要填写。尽管看起来很糟糕,中等数组公式上的计算量会使它相形见绌,但是
间接
确实会使它变得不稳定,因此获取剥离的值并复制、粘贴特殊值以删除公式。

如果愿意,您也可以使用以下公式。它不使用间接函数


中(中)(中(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(替换)(中(中(中)(中)(中)(中)(中)(中)(替换)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中,中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)中)(中)中1,1+2-FIND(| | | | | | | | | | | | | | | | | | | |,A1,1)+2-FIND(| |(1)(1)发现,发现,发现,发现(中)发现,发现(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(1,发现,中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)发现,中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)中)(中)(中)(中)中)(中)(中)(中)中)(中)(中)(中)(中)(中)(中)(中)(中)(中)中)(中)(中)(中)(中)(中)(中)中)(中)中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)发现)(A1,FIND(“| |”,A1,1)+2,FIND(| |”,A1,FIND(| |,A1,1)+2)-FIND(| |,A1,1)-2),“,”,”)+1,50)))(中)(中(中)(中)(中)(中(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)中,中(中)中(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(中)(| | | | | | | | | | | | | | | | |,A1,1)-2),“”,“”,“”)1,50)

我尝试使用文本到列功能,但这无助于实现预期结果。我相信这是因为我的失败。非常感谢这是完美的。正是我需要的。我爱你们。@pnuts-它对我有效(我在发布之前测试过)。如果你碰巧找到了原因,请发表评论。@pnuts-excel2010。我没有删除目标字段末尾的数字,我想你也没有删除。我不明白你的问题。非常有用。特别是第二次发行+1.非常感谢你这也很有效-我真的很感谢你的帮助this@user3509034-我不清楚您是否希望排除文本字段中的数字。也许您应该编辑您的问题,并将数字包含在首选样本输出中。e、 g.目标光学系统4226@pnuts-我正忙着查找完美的定义。用大写字母输入时,它可能有另一个意思。对不起。为了清楚起见,这两个公式都符合我的需要。经过仔细审查,提供的公式@jeeped是最好的。再一次,我真的很感谢你在这方面的帮助。