RFM分段Excel取中间值

RFM分段Excel取中间值,excel,excel-formula,excel-2010,Excel,Excel Formula,Excel 2010,我试图用RFM细分法对客户进行细分,R、F和M各列的细分范围为1到5。在我将三列合并后,有许多可能性,如151、555或254等。 代码555是最好的客户 X5X是忠实的客户。X定义任何数字,例如代码454也是忠诚的客户细分。 问题是我无法在excel中准确地传递IF函数。这是我对555的审判 函数重叠,因为它采用了最新的IF,所以555的结果是忠诚客户,这应该是最佳客户。有很多细分,如XX5,用于大款消费者,但由于公式重叠,我无法继续其余部分。谢谢您的帮助。如果每个数字只需要一个结果,那么您只

我试图用RFM细分法对客户进行细分,R、F和M各列的细分范围为1到5。在我将三列合并后,有许多可能性,如151、555或254等。 代码555是最好的客户 X5X是忠实的客户。X定义任何数字,例如代码454也是忠诚的客户细分。 问题是我无法在excel中准确地传递IF函数。这是我对555的审判


函数重叠,因为它采用了最新的IF,所以555的结果是忠诚客户,这应该是最佳客户。有很多细分,如XX5,用于大款消费者,但由于公式重叠,我无法继续其余部分。谢谢您的帮助。

如果每个数字只需要一个结果,那么您只需要将最高优先级放在第一位。如果这是真的,那么第一个将是所使用的。从你的例子来看,455既是一个忠诚的客户,又是一个挥金如土的人。我们无法从你的解释中看出这种情况下的结果。但是,无论哪个优先级较高,都应该在嵌套的IF语句中出现得更早

您的公式看起来正确,555应该返回最佳客户。如果它返回的是忠诚的客户,那么看起来您已经将555存储为一个数字,而不是O14中的文本。如果是数字,则您的公式应为:

=IF(O14=555,"Best Customer",IF(MID(O14,2,1)="5","Loyal Customer"))
唯一的区别是删除555左右的引号。如果O14存储为数字,则O14=555将数字与字符串进行比较,该字符串由3个5个字符组成,而不是数字555,数字555将始终返回FALSE,因此它将转到下一个If语句。要在开始时获得真正的结果,您需要将O14与数字555进行比较

然后,你可能会对公式的第二部分起作用的原因感到困惑。这是因为MID函数将接受一个数字作为输入,然后强制进行类型转换

使用=运算符时,excel只能比较相似的值。这意味着它可以将字符串与字符串或数字与数字进行比较,但不能将字符串与数字进行比较

但是,MID函数将接受字符串或数字。当给它一个数字时,它将首先将其转换为一个字符串,然后输出一个字符串

如果给定MID555,2,1,它首先将555更改为555,并给出与MID555,2,1相同的结果,即字符5而不是数字5

因此,即使O14具有数字555,MID014,2,1也将返回字符5,比较MIDO14,2,1=5将返回TRUE

=IF(O14=555,"Best Customer",IF(MID(O14,2,1)="5","Loyal Customer"))