Orleans9 2021-05-11 17:25 采纳率: 50%
浏览 60
已采纳

算法:如何确定第N列在Excel中对应的横坐标,反之如何确定Excel横坐标对应第多少列

Excel中横坐标是用英文字母表示 如第1列是A;第27列是AA;第28列AB;第702列是ZZ;第703列是AAA ;704列AAB;以此类推

那么第999999列所对应的横坐标是什么;

横坐标为ABBBBBZ是第多少列。求js算法

  • 写回答

2条回答 默认 最新

  • 斯洛文尼亚旅游 2021-05-11 17:51
    关注
    
        var ConvertNum = function (str) {
            str = str.toUpperCase();
            var n = 0;
            var s = str.match(/./g);//求出字符数组
            var j = 0;
            for (var i = str.length - 1, j = 1; i >= 0; i--, j *= 26) {
                var c = s[i].toUpperCase();
                if (c < 'A' || c > 'Z') {
                    return 0;
                }
                n += (c.charCodeAt(0) - 64) * j;
            }
            return n;
        }
        var Convert26 = function (num) {
            var str = "";
            while (num > 0) {
                var m = num % 26;
                if (m == 0) {
                    m = 26;
                }
                str = String.fromCharCode(m + 64) + str;
                num = (num - m) / 26;
            }
            return str;
        }
    
        alert(Convert26(28));
        alert(Convert26(702));
        alert(Convert26(704));
        alert(Convert26(999999));
    
        alert(ConvertNum('ABBBBBZ'))
        alert(Convert26(333629062))
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 matlab使用自定义函数时一直报错输入参数过多
  • ¥15 设计一个温度闭环控制系统
  • ¥100 rtmpose姿态评估
  • ¥15 java 通过反射找路径下的类,打包后就找不到
  • ¥15 通联支付网上收银统一下单接口
  • ¥15 angular有偿编写,
  • ¥15 centos7系统下abinit安装时make出错
  • ¥15 hbuildex运行微信小程序报错
  • ¥15 关于#python#的问题:我知道这个问题对你们来说肯定so easy
  • ¥15 wpf datagrid如何实现多层表头