CString IndexToString(long nRow,long nCol)
{
//const int SUM_OF_CHARACTER=26
CString cstrResult;
if(nCol<=SUM_OF_CHARACTER)
cstrResult.Format(L"%c%ld",'A'+(nCol-1)/SUM_OF_CHARACTER,nRow);
else if(nCol>SUM_OF_CHARACTER&&nCol<SUM_OF_CHARACTER*SUM_OF_CHARACTER+SUM_OF_CHARACTER)
cstrResult.Format(L"%c%c%ld",'A'+(nCol-1)/SUM_OF_CHARACTER-1,'A'+(nCol-1)%SUM_OF_CHARACTER,nRow);
else
{
int nNum((nCol-1)/SUM_OF_CHARACTER%SUM_OF_CHARACTER);
if(0==nNum)
cstrResult.Format(L"%c%c%c%ld",'A'+(nCol-1)/SUM_OF_CHARACTER/SUM_OF_CHARACTER-2,'Z',
'A'+(nCol-1)%SUM_OF_CHARACTER,nRow);
else
cstrResult.Format(L"%c%c%c%ld",'A'+(nCol-1)/SUM_OF_CHARACTER/SUM_OF_CHARACTER-1,'A'+(nCol-1)/SUM_OF_CHARACTER%SUM_OF_CHARACTER-1,
'A'+(nCol-1)%SUM_OF_CHARACTER,nRow);
}
return cstrResult;
}
Excel中行列转换为AB1格式(支持列大于676)
猜你喜欢
转载自blog.csdn.net/Wite_Chen/article/details/81037759
今日推荐
周排行