윈7 64비트, 엑셀 32비트, 원천 데이터 64비트
2014.04.29 18:35
질문하시기 전에 게시판 검색을 먼저 해주세요.
타블릿PC, 스마트폰에 관한 질문 또는 요청은 <포터블기기 질문답변> 게시판을 이용해주세요.
=============================================================================================
안녕하세요, 여러분. 엑셀로 먹고 사는 해색주입니다.
현재 환경은 64비트 윈도7에 32비트 엑셀이 설치되어 있습니다. 그리고 64비트 생성되어서 내려오는 엑셀 파일이 있습니다.
저는 32비트 엑셀에서 외부 데이터 참조를 이용하여 64비트 엑셀 파일에 있는 자료로 피벗을 만듭니다. 제가 사용하는 팩키지에서 엑셀64비트로 파일을 내려주면, 32비트 엑셀에서 피벗 새로 고침으로 자료를 업데이트 하는 형태입니다.
여기서 문제가 발생합니다. 32비트 엑셀에서 새로 고침을 누르면 'A PivotTable, Cube function or slicer using "Blah Blah" has failed to refresh'라고 에러 메시지가 나옵니다. 64비트 엑셀 파일을 32비트 엑셀 프로그램에서 열어서 다시 저장하면 정상적으로 새로 고침이 됩니다.
이번에 보니까, 64비트 엑셀은 자체적으로 압축 알고리즘이 있는 것으로 보입니다. 32비트로 저장하면 파일 사이즈가 갑자기 늘어나더라구요.
이 문제로 인해서 큰 파일을 매번 열어서 다른 이름으로 저장하고 있습니다. 혹시 다른 방법이 없을까요? 구글링 하다가 지쳐서 만문에 글을 올려 봅니다. 부디 고수분들의 많은 도움 부탁 드립니다.
코멘트 5
-
해색주
04.29 23:36
둘다 xlsx 포맷이 맞습니다. 32비트보다 62비트 엑셀이 같은 데이터인데도 훨씬 작습니다. 파일 크기는 100메가를 넘지 않습니다.
-
일단 MS에서 제공하는 문서들에 의하면, 이론상 32bit 엑셀이나 64bit 엑셀이나 크기는 거의 같아야 합니다. 거의 같다고 표현한 이유는, 엑셀문서 안의 "작성자 이름" 등이 다를 수 있기 때문에 그렇게 표현한 거구요.
이건 순전히 제 추측인데요.
혹시 원본 엑셀 파일 안에서 순환 참조같은게 있는건 아닌가도 의심스럽습니다. 즉, 32bit 엑셀에서 저장할 때, 외부에서 참조되는 데이터를 가져다가 내장해서 저장하기 때문에 파일이 커지는건 아닌가 하는 생각이 드네요. 그리고 지금 에러가 나는 부분은, 그 데이터를 재차 참조할 떄 에러가 나는건 아닌가 싶구요.
좀 번거롭지만 확인하는 방법으로는, 원본 xlsx 파일과 32bit에서 다시 저장된 xlsx파일의 뒤에 확장자 ".zip"을 추가한 다음 각각 압축을 풀어서, 두 폴더의 내용물이 어떤 차이를 가지고 있는가를 보는 것일듯 합니다. diff 프로그램을 사용하면 더 편리할텐데, 무료 프로그램들도 많지만 해색주님 근무환경이 이런 어플을 막 설치해도 되는 환경일지 우려가 되네요.
-
김강욱
04.30 05:28
저도 midday 님의 의견에 동의합니다.
한 프로그램에서 파일을 상황에 따라 여러가지 포맷으로 가져가기는 쉽지 않습니다.
-
엑셀 64 비트는 단순히 처리 성능을 64비트로 하는 겁니다.
파일 포맷이나 각종 성능 및 규격은 32비트와 동일합니다.
물론 최신 버전인 2013 에서도 몇가지 기능은 호환되지 않으니 주의하셔야 합니다. (32비트 플러그인과의 호환 등)
엑셀파일은 32bit나 64bit나 동일한 포맷규격을 쓰는 것으로 알아요. 압축 알고리즘도 zip 알고리즘을 동일하게 사용하고 있거든요. 둘다 xlsx 포맷으로 저장하고 있는건 맞나요? 혹시 파일 크기가 수백메가 이상인가요?