수식을 만들 때 내 열 번호가 26이라고 말하면 내 수식이 다음과 같이 나타납니다. 예 : SUM (AA1 : AA3). 26 번을 AA로 어떻게 변환합니까? 아니면 27에서 AB라고 말합니까? Apache POI가 Column 인덱스를 정수로 사용하여 문자 표현으로 변환 할 수있는 방법이 있습니까? 조금 코드가 필요Apache poi Excel : 열의 정수 인덱스를 기반으로 수식 만들기
답변
:
public static String columnName(int index) {
StringBuilder s = new StringBuilder();
while (index >= 26) {
s.insert(0, (char) ('A' + index % 26));
index = index/26 - 1;
}
s.insert(0, (char) ('A' + index));
return s.toString();
}
그리고 뭔가를 테스트하기 :
public static void main(String[] args) {
System.out.println(columnName(25));
System.out.println(columnName(26));
System.out.println(columnName(52));
System.out.println(columnName(27 * 26));
}
출력 :
Z
AA
BA
AAA
어윈 Bolwidt이 올바른 생각을 가지고있다.
는 영어로는 다음과 같습니다 그래서 예를 들면num/26 - 1 = first_letter
num % 26 = second_letter
: 따라서
27/26 - 1 = 0 => A
27 % 26 = 1 => B
:
27 = AB
Excel 2007 및 그 이후 버전의 열 수 제한은 16,384입니다. 즉, 열 이름 XFD [인덱스 16,383]입니다. 그래서 3자를 필요로합니다. 그리고 아마 더 새로운 버전은 더 많은 것을 허용합니다; 내 함수는 Integer.MAX_VALUE까지 처리 할 수 있습니다 - 열 FXSHRXX :-) –
아, 알겠습니다. 조언 해주셔서 감사합니다. :) –
당신은 아파치 POI에서 CellReference를 사용하는 것이 좋습니다. 즉, 당신이 당신의 특정한 경우를 들어
을 변환하는 데 필요한 방법을 제공합니다, 당신은 convertNumToColString(int))을 원하는 :는 0 기반의베이스 (10) 열에서 취득 해 ALPHA-26 표현을 반환합니다.
이것은 실제로 아파치 POI가 내장되어 있다는 것을 이해합니다. –
- 1. Apache POI : 수식 계산시 예외
- 2. Apache POI 수식 셀 중복이 매우 느림
- 3. Apache POI Comment Excel
- 4. Apache POI 및 EXCEL
- 5. excel java apache poi
- 6. Apache POI 행 그룹 만들기
- 7. Excel 문서 저장 Apache POI
- 8. Excel Apache POI 인쇄 문제
- 9. Apache POI 및 SUMPRODUCT 수식 평가
- 10. Apache POI HSSF/XSSF - 셀에없는 수식 계산
- 11. Poi 수식 평가 오류
- 12. Apache POI Excel 행 및 열 인덱싱
- 13. Apache POI org.apache.poi.ss.formula.FormulaParseException
- 14. Java - Apache POI 정수 유효성 검사
- 15. excel (Apache poi)에 사용자 입력 받기
- 16. JAVA + POI API Excel- 열의 너비를 늘려야합니다.
- 17. Apache POI - 단일 열 반복
- 18. 순환 Excel 수식
- 19. Apache poi excel 파일이 닫히기 전에 확인을 던졌습니다.
- 20. Apache POI, Excel 2007+ XML 및 OSGI
- 21. Excel 파일을 작성하는 동안 Apache POI OutOfMemoryError
- 22. Apache poi Excel 라인 차트 포인트
- 23. Java Apache POI Excel 읽기 예외
- 24. Apache POI (Excel 87-2003 .XLS 형식)
- 25. Excel 수식 - 3 열의 값 매핑
- 26. Apache POI 컴파일 오류
- 27. Java Apache poi
- 28. Apache POI 데이터 형식
- 29. Android에서 Apache POI 사용
- 30. Apache POI 출력 문제
http://stackoverflow.com/questions/2339238/how-to-set-formulas-in-cell-using-apache-poi – Hirak
@Hirak 그게 문제가되지 않습니다. 문제는 열 문자를 사용하는 대신 매개 변수로 열 번호를 사용하는 것입니다. 1은 B와 연관되고, 2는 C와 연관됩니다. 문제는 우리가 이중 문자를 얻는 것입니다. –