本文主要是介绍输入数字列号获取EXCEL的列编号,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
根据输入的数字列号,转换为标准的excel列编号,比如:29对应AC
FUNCTION z_num_to_excel_column.
*"----------------------------------------------------------------------
*"*"本地接口:
*" IMPORTING
*" REFERENCE(IV_NUM) TYPE I
*" EXPORTING
*" REFERENCE(IV_COLUMN) TYPE STRING
*"----------------------------------------------------------------------IF iv_num LE 0.EXIT.ENDIF.DATA: lv_array TYPE string,lv_num TYPE i,lv_divide TYPE i,lv_mod TYPE i,lv_float TYPE p DECIMALS 2.lv_array = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'.* 从右往左确定字母lv_num = iv_num.lv_mod = lv_num MOD 26.lv_mod = lv_mod - 1.IF lv_mod = -1.lv_mod = lv_mod + 26.ENDIF.iv_column = lv_array+lv_mod(1).lv_num = iv_num.WHILE lv_num > 26.lv_float = lv_num / 26.lv_num = lv_num / 26. "Demo:27 AAIF lv_num > lv_float.lv_num = lv_num - 1.ENDIF.lv_mod = lv_num MOD 26.lv_mod = lv_mod - 1.IF lv_mod = -1.lv_mod = lv_mod + 26.ENDIF.CONCATENATE lv_array+lv_mod(1) iv_column INTO iv_column.ENDWHILE.CONDENSE iv_column.ENDFUNCTION.
测试结果
这篇关于输入数字列号获取EXCEL的列编号的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!