2010-04-28 23:50:54 +0000 2010-04-28 23:50:54 +0000
4
4

Jak przypisać wartość liczbową do wartości nienumerycznej w Excelu?

Mam kilka odpowiedzi w ankiecie z wartościami takimi jak “VU” dla “Bardzo mało prawdopodobne” i “S” dla Czasami. Każda odpowiedź zajmuje jedną komórkę. Dla każdej komórki zawierającej odpowiedź z ankiety, chcę wypełnić inną komórkę odpowiadającą jej liczbą. Na przykład, dla każdej komórki zawierającej “VU” chcę wypełnić odpowiadającą jej komórkę liczbą 1.

Jak to się robi?

Odpowiedzi (3)

3
3
3
2010-04-29 12:20:55 +0000

Miałbym osobną tabelę w innej zakładce, w której wyszczególniłbym te wartości:

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

Następnie, w nowej kolumnie, na ankiecie dodałbym taką formułę:

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

gdzie A2 odnosi się do odpowiedzi respondenta dla tego wiersza, a Codesheet odnosi się do arkusza, w którym umieściłeś powyższą tabelę wartości.

Teraz powinieneś być w stanie sortować według nowej kolumny.

2
2
2
2010-04-29 01:55:15 +0000

Możesz to łatwo zrobić za pomocą formuły. Coś w stylu:

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

Gdzie A1 to komórka zawierająca odpowiedź.

Użyłem Bardzo mało prawdopodobne, Czasami, Prawdopodobne, Bardzo prawdopodobne jako możliwe odpowiedzi.

Możliwe byłoby również stworzenie makra VBA, które by to zrobiło, ale myślę, że to by skomplikowało sprawę…

-1
-1
-1
2010-04-29 18:02:52 +0000

W końcu zdecydowałem się na staromodny, dobry look-up tablicowy, taki jak ten:

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

Jednak w niektórych komórkach referencja do komórki, która jest pierwszym argumentem LOOKUP'a wskazywała na pustą komórkę, co skutkowało błędem “N/A”. Moją odpowiedzią na to było zastosowanie funkcji NOT() oraz ISBLANK() w taki sposób:

=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}),"")