くすのきです。
廣島 さまこんにちは
excel2000 では A - IV まででした。
Aを 1 として、IV = 256 ですよね。1 2 3 ... と番号を振って確認しました。
廣島 さまの方法で書いてみました、自分も ^ の計算が入るのは正直どうかなーと思
っていました。たしかにこちらのほうが計算が楽そうです。
いかがでしょうか?
> cat rowtonum3.awk
function rowTonum(row ,keta, i, dec) {
row = tolower(row)
keta = length(row)
dec = 0
for (i = 1; i < keta ; i++) {
dec = (dec + index("abcdefghijklmnopqrstuvwxyz" ,substr(row, i, 1)))*26
}
dec = dec + index("abcdefghijklmnopqrstuvwxyz" ,substr(row, i, 1))
return dec
}
$1 ~/[a-zA-z]+/ {
rowIs = $1
numIs = rowTonum(rowIs)
print toupper(rowIs) " = " numIs
}
>awk -f rowtonum3.awk data
AAA = 703
IV = 256
AA = 27
EF = 136
プログラムより算数の知識がどれくらいあるかですよね。
算数のピークは高校の受験まででした ^^
----------------
くすのき@まっとう