Excel の列名(A,B,C,...)を数(1,2,3,...)に変換する についてだが,引数チェックはともかく,
ExcelColToNum = function(s) {
s = unlist(strsplit(s, ""))
x = which(LETTERS == s[1])
if (length(s) == 2) {
x = x*26 + which(LETTERS == s[2])
}
return(x)
}
x = c("A", "C", "Z", "AA", "AC", "ZZ")
sapply(x, ExcelColToNum)
で十分のような