如何在Excel中为非数值赋值


4

我有一些调查回复,其值为“非常不可能”的“VU”和“有时”的“S”。每个调查回复占据一个单元格。对于包含调查响应的每个单元格,我想用相应的数字填充另一个单元格。例如,对于包含“VU”的每个单元格,我想填充数字为1的相应单元格。

这是怎么做到的?

Answers:


2

您可以使用公式轻松完成此操作。就像是:

=IF(A1="VU",1,IF(A1="S",2,IF(A1="L",3,IF(A1="VL",4,""))))

A1是包含响应的单元格。

我使用非常不可能,有时,可能,非常可能的回应。

也可以创建一个VBA宏来做到这一点,但我认为这会使它复杂化......


2

我会在另一个选项卡中有一个单独的表,详细说明值:

Code   Value
VU     1
U      2
S      3
L      4
VL     5

然后,在新专栏中,在调查中我会添加以下公式:

=VLOOKUP(A2,CodeSheet!$A$2:$B$6,2,0)

其中A2表示受访者对该行的答案,而“代码表”是指您放置上述值表的表单。

现在,您应该可以按新列进行排序。


我尝试了这种方法并且它一直失败,因为代码不是按字母顺序排列的。
Keyslinger

2
你在公式中有最后一个参数吗? ',0)'没有引号?如果你这样做,订单无关紧要。
Sux2Lose

=选择(A2, “VU”, “U”, “S”, “L”, “VL”)
Shawn V. Wilson

-1

我最终选择了一个像这样的老式阵列查找器:

=LOOKUP(J4, {"A","D","NS","O","R","S","SA","SD","VO","VR";4,2,3,4,2,3,5,1,5,1})

但是,在某些单元格中,作为LOOKUP第一个参数的单元格引用指向一个空单元格,从而导致出现“N / A”错误。我对此的回应是应用NOT()和ISBLANK()函数,如下所示:

=IF(NOT(ISBLANK(J4)),LOOKUP(Sheet1!J4, {"A","D","NS","O","R","S","SA","SD","VO","VR";4,2,3,4,2,3,5,1,5,1}),"")

我想你可能过度复杂了这个解决方案。
Sux2Lose

与个人无关。我不认为这是最好的答案。
Sux2Lose

2
我已经开始理解我的解决方案的不雅,现在我同意你的看法,你提供的答案是优越的。感谢你们多年前对我的贬低,所以我今天能再找到它!
Keyslinger
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.