2009-07-19 12 views

Odpowiedz

16

Istnieje funkcja CHAR co daje znak o podanym kodzie:

CHAR(96 + 5) 

da ci "e".

Ale nie ma bezpośredniego sposobu na zdobycie alfabetu.

+0

wystarczająco dobre dla mnie ... Dzięki! – Fortega

+3

I CHAR (64 + n) otrzyma wielszą literę n-tego. –

0

można użyć funkcji ascii ponieważ każda litera ma wartość liczbową w ASCII

Nie wiesz, jakiego języka używasz ... w T-SQL można używać ASCII i CHAR funkcje:

PRINT CHAR (ASCII ('a') + @i) - gdzie @i to wartość liczbowa

+0

Czy w Excelu jest T-SQL? – Joey

2

Alternatywną, chociaż nie jest tak krótka, jak CHAR funkcji jest WYBIERZ numer funkcji

=CHOOSE(5,"a","b","c","d","e","f","g","h","I","j","k","l","m", 
     "n","o","p","q","r","s","t","u","v","w","x","y","z") 

Indeksu „5” zwraca wartość piąty na liście. Może to być zakres danych Excela, np. (A1: A26).

Jeśli numer indeksu jest poza zakresem, #VALUE! jest zwracana

0

Istnieje również inny prostszy sposób: CHAR(CODE("A")+TRUNC(RAND()*26)).

+1

To nie odpowiada na zadane pytanie; zamiast tego generuje losową wielką literę. – Mogsdad

0

Daje to pozycję danego listu (na przykład C3), jeśli jest to kapitał, czy nie.

=IF(AND(CODE(C3)>=65,CODE(C3)<=90),CODE(C3)-64,IF(AND(CODE(C3)>=97,CODE(C3)<=122),CODE(C3)-96,"Error")) 
+0

To nie odpowiada na zadane pytanie; zamiast tego idzie w drugą stronę. Biorąc pod uwagę _letter, zwraca on _number_, wskazując pozycję tej litery względem początku alfabetu, niezależnie od przypadku. (I byłoby łatwiej zmusić literę do górnej lub małej litery, aby rozpocząć.) – Mogsdad