2011-09-08 2 views
13

자, 여기 내 딜레마가 있습니다.PHP에서 자동 필터를 사용하여 Excel 파일을 생성하는 방법은 무엇입니까?

저는 Medical Marcom에 대한 워드 프레스 플러그인을 사용하여 그의 미국 Twitter 의사 목록을 자동으로 업데이트했습니다. 기본적으로 사용자가 목록에 추가를 요청할 수있는 양식을 만들 수있는 기능을 제공하며 관리자 패널에서 요청을 확인하고 Excel 파일에 요청을 추가하면 초기 데이터가 채워지며 마지막으로 특정 필드는 일주일 내내 자동으로 업데이트됩니다.

여기에 문제가 있습니다.

내 코드는 PHPExcel을 사용하여 PHP로 Excel 파일을 생성합니다. 그러나 시작시 시트에 간단한 자동 필터를 적용해야합니다. 솔직히 말해서 누구나 Excel에서 자동 필터를 쉽게 적용 할 수 있지만 시작부터 사용할 수 있기를 원합니다. 그래서, 내가 찾은 코드를 적용 해 보았습니다 :

$excel->getActiveSheet()->setAutoFilter('A1:J' . $row); 

$ excel은 (는) 내 PHPExcel 인스턴스입니다. $ row는 데이터베이스에서 출력되는 마지막 행입니다. 이 파일은 URL을 클릭하면 바로 생성되고 PHP의 헤더과 같이, Excel 파일로 출력을 변환하도록 설정되어 있습니다 :

header("Content-type: application/vnd.ms-excel"); 
header("Content-Disposition: attachment; filename=" . $file); 

을하지만 파일을 열 때, 어떤 자동 필터가 설정되지 않습니다 ... 나는 시도 posting a question over at PHPExcel's website하지만 답장을받지 못했습니다. 그래서 여기에서 물어보기로했습니다.

내가 뭘 잘못하고 있는지 알 수 있습니까? 현재이 문제가 해결 될 때까지 그는 원래 파일을 가지고 가고 있습니다 (약간 업데이트되었지만).

답변

1

나는 아직 구현되지 않았다는 것을 this link에서 알고 있습니다.

여전히 (낮은 우선 순위 미안) work item 인 것 같습니다.

[편집] Excel 2007에서 작동하는 것처럼 보입니다 (이 work item 참조). 클라이언트가 사용하는 Excel 버전은 무엇입니까?

+0

나는 그것에 대해 물어해야합니다 : 그것은 작동하려면

당신은 당신의 헤더 행의 범위를 지정해야합니다. 나는 그것이 구현되었고, 문서에서 바로 보여 주지만 그것을 위해 작동하지 않았다. 작업 항목을 게시 한 다른 사람이 분명히 작동하고 있었고 고급 기능이 없었습니다. 나는 엑셀 파일을 잘못 출력하려고 시도했을지도 모른다고 생각하기 시작했다. 나는 Excel 2007을 사용하는 경우 내 고객에게 물어볼 것입니다. 그러나 현재 파일은 2003입니다. 불행히도 ... – JaidynReiman

23

누구나이 질문에 답합니다. 이 기능은 XLSX와 XLS 모두에 구현되었습니다.

$excel->getActiveSheet()->setAutoFilter('A1:J1'); 
+0

머리글 행만 지정하면됩니다. 감사! – Oak

관련 문제