본문 바로가기

개발자愛/SAP

ABAP -> 엑셀매크로(VBA) 로 데이터를 넘길때 주의점 하나

매크로 파일까지 잘 만들어서 올려놓고... 이젠 끝났겠지.. 하고 잊고 있었는데...

오늘 아침 이슈라며 가지고 와서 주는 사항이 있었다.


분명 ALV 상에선 소숫점 까지 정상적으로 표현이 되는데,

매크로를 이용하여 엑셀로 다운 받은 파일에선 뒤가 .00 으로 되어있고 반올림이 되어있었다는 것.

혹시 내가 인터널 테이블을 넘길때 부터 잘못넘기나 싶어.. 디버깅을 해봐도... 넘길때의 값은 정상...


아니 뭐가 문제일까? 생각을 하고 해봐도 알 수가 없었기에...

Cvar() 도 써보고 데이터 타입도 바꾸어 보았지면 결과는 마찬가지...

하다하다 생각한 것이 '에잇.. 안되면 스트링으로 뿌려보지 뭐!!' 하고 생각을 하고..


엑섹에서 셀 서식은 숫자(소숫점 두자리 지정)로 하고,

매크로 에서는 Dim lp As String 으로 정의를 해서 데이터를 받은 뒤 뿌려보았는데...



표현도 정상적으로 되고 소숫점도 제대로 나온다.

대체 난 뭘 하고 있었던 것인지... OTL...



역시나 엑셀 매크로 관련한 프로그램은 자주 그리고 많이 쓰지 않으므로...

잊어버릴까 싶어.. 잽싸게 메모.. 메모...