特殊字符在字符串中的返回位置

时间:2016-01-27 23:46:13

标签: excel

?是excel中的一个特殊字符,据我所知,它不适用于=FIND("?",<stringref>)

=FIND(CHAR(63),<stringref>)返回我想要的内容。在我的情况下它是11,因为?字符首先出现,我的字符串中有11个字符。

现在,我希望从公式中的另一个单元格引用CHAR(63),而不是硬编码。

我们假设单元格A1有我的公式,而A1有我的搜索项?CHAR(63)

如何从单元格A1中的公式中引用?CHAR(63)来返回字符串中的字符数(在C1中)?

这是我的尝试:

=CODE("?")产生“63”,所以理论上我可以使用它。

A1 = FIND(B1,C1) = Value Error
B1 = CONCATENATE("CHAR(",CODE("?"),")") = CHAR(63)
C1 = somestring?someparam

我想:     A1 = 11

问题似乎是在另一个单元格中引用字符串CHAR(63),因为如果我将B1的公式嵌入到A1中,它就可以工作。

1 个答案:

答案 0 :(得分:1)

你不需要在单元格B1中完成所有爵士乐。刚刚放?在B1(没有引号,没有等号),然后使用公式,

 =FIND(B1,C1) 
在单元格A1中

请注意,如果您试图在概念上弄清楚如何将“CHAR(63)”放入Cell B1,然后在将其用作“查找”功能的输入时让它评估此功能,那么您将不得不使用一些VBA,例如here

此外,您可以将“= code(”?“)”放入单元格B1,然后使用:

=FIND(CHAR(B1),C1)
单元格A1中的