c#/기타

[c#] 숫자를 엑셀 열 알파벳으로 변환

byH 2021. 12. 16. 11:42
728x90
반응형

excel을 읽어올 때 

_worksheet.get_Range("A" + i).Value2 이런식으로 읽어오다 보니, 

for( int i =0; i<=100; i++)

이런식으로 반복문을 한다고 했을 때 22번째 열의 알파벳은 무엇인가? 에 대한 고민을 한적이 있다.

 

그럴 때 다음과 같은 함수를 작성해놓고, 해당 함수를 불러 사용해보자 

 public string ExcelColNumAlpabet(int icol)
        {
            int iDivideNum = icol;
            string strCol = string.Empty;

            int remindNum = 0;
            while (iDivideNum > 0)
            {
                remindNum = (iDivideNum - 1) % 26;
                strCol = Convert.ToChar('A' + remindNum) + strCol;
                iDivideNum = (int)((iDivideNum - remindNum) / 26);
            }
            return strCol;
        }

 

     private void button1_Click(object sender, EventArgs e)
        {
           for(int i = 0; i<=100; i++)
           {
              string alpa =  ExcelColNumAlpabet(i);
              richTextBox1.AppendText(i+"번째 알파벳은 : " +alpa+"\n"  );
           }
        }

        public string ExcelColNumAlpabet(int icol)
        {
            int iDivideNum = icol;
            string strCol = string.Empty;

            int remindNum = 0;
            while (iDivideNum > 0)
            {
                remindNum = (iDivideNum - 1) % 26;
                strCol = Convert.ToChar('A' + remindNum) + strCol;
                iDivideNum = (int)((iDivideNum - remindNum) / 26);
            }
            return strCol;
        }

 

728x90
반응형

'c# > 기타' 카테고리의 다른 글

[c#] DateTime 현재날짜, 현재시간  (0) 2021.12.16
[c#] directoryinfo 경로, 폴더, 파일  (0) 2021.12.16
[c#] Excel 읽기, 쓰기  (0) 2021.12.16
[c#] file 경로를 경로, 파일이름, 파일 형식으로 분리  (0) 2021.12.16
[C#] enum  (0) 2021.12.06