////// 10진수 컬럼 값을 엑셀에서 사용하는 컬럼 값 처럼, 알파벳으로 변환 /// /// ///public string DecToAlphabet(int num) { int rest; //나눗셈 계산에 사용될 나머지 값 string alphabet; //10진수에서 알파벳으로 변환될 값 byte[] asciiA = Encoding.ASCII.GetBytes("A"); // 0=>A rest = num % 26; // A~Z 26자 asciiA[0] += (byte)rest; // num 0일 때 A, num 4일 때 A+4 => E alphabet = Encoding.ASCII.GetString(asciiA); //변환된 알파벳 저장 num = num / 26 -1; // 그 다음 자리의 알파벳 계산을 재귀하기 위해, 받은 수/알파벳수 -1 (0은 A라는 문자값이 있으므로 -1을 기준으로 계산함) if (num > -1) { alphabet=alphabet.Insert(0,DecToAlphabet(num)); //재귀 호출하며 결과를 앞자리에 insert } return alphabet; // 최종값 return } /// /// int input=Int32.Parse(textBox1.Text.ToString()); /// Trace.WriteLine(input+"=> "+ xlsmaker.DecToAlphabet(input)); /// 결과 /// 0=> A /// 27=> AB /// 16383=> XFD //
2012-06-22
C# 숫자 컬럼값을 액셀 알파벳컬럼값으로 변환
숫자 컬럼 값을 엑셀에서 사용하는 알파벳으로 변환해 봄.
피드 구독하기:
댓글 (Atom)
댓글 없음:
댓글 쓰기