2017-03-16 45 views
1

在Excel的所有细胞结束我有下列字段:取下#字符以在柱(VBA的EXCEL)

OOK: vpjsghe.fkds 2002 field1 Field2 # v2.0.11-28 
OOK: vpjsghe.fkds 2002 field3 Field4 # v2.0.11-289 
OOK: vpjsghe.fkds 2002 field5 Field6 # v2.0.11-101 
OOK: vpjsghe.fkds 2002 field7 Field8 # v2.0.11-2892 

,我需要除去从#文本直到该字符串的末尾有这个:

OOK: vpjsghe.fkds 2002 field1 Field2 
OOK: vpjsghe.fkds 2002 field3 Field4 
OOK: vpjsghe.fkds 2002 field5 Field6 
OOK: vpjsghe.fkds 2002 field7 Field8 

#只在每个字段中出现一次。

回答

2

你可以用一个公式

=LEFT(A1,FIND("#",A1)-1) 

A1是如做到这一点。 OOK: vpjsghe.fkds 2002 field1 Field2 # v2.0.11-28

但请注意,这会导致尾随空格。要删除它,您可以使用TRIM()或找到空间FIND(" #",A1)

1

为VBA代码,你可以使用类似

left(sheets(1).range("A1").value,(instr(0,sheets(1).range("A1").value,"#",vbBinarycompare))-1) 
0

有一个内置的功能,在功能区中(数据 - >文本列),将允许您使用#作为delimter和拆分它,那么只需删除你不想要的列。它比左式更容易,你不必搜索角色。