0

有没有人有算法或逻辑将 A 转换为 1 ,B 到 2,... ,Z 到 26,然后 ,AA 到 27,AB 到 28 等等但是 BA 或 cb 或 cbe 或任何有字母的字符串降序不应该编号为例如:BB 应该是 53,因为 BA 没有编号。这个问题与Convert A to 1 B to 2 ... Z to 26 and then AA to 27 AB to 28 非常相似(列索引到 Excel 中的列引用),但如上所述略有不同

4

2 回答 2

0

我假设您想要有限数量的映射

  1. 按您需要的顺序生成您想要的所有映射

    A, B, C, ... , Z, AA, AB, ... ,AZ, BA, BB, ..., BZ

  2. 按非降序过滤带有字母的映射

    A, B, C, ... , AA, AB, ... ,AZ, BB, ..., BZ(BA消失了!)

    要检查字符串是否为非降序,只需将其与其排序版本进行比较。

  3. 枚举!

于 2013-10-03T15:29:00.570 回答
0

假设单元格 A1 中的第一个字符和单元格 B1 中的第二个字符,以下公式应该可以帮助您计算值

=IF(ISBLANK(A1),0,CODE(A1)-CODE("A")+1)*26+(CODE(B1)-CODE("A")+1)

只有 A 到 Z,A1 为空白,将单个字符放入 B1。

于 2013-10-03T02:40:50.823 回答