텍스트 파일이 Excel로 열리면 행이 함께 그룹화되도록하려면 어떻게합니까?

StackOverflow https://stackoverflow.com/questions/1038811

문제

Perl 스크립트를 통해 일부 데이터를 수집하고 있습니다. Excel을 사용하여 다른 사람들이 데이터를 검토하고 처리해야합니다. 현재 데이터를 탭으로 연결된 텍스트 파일로 작성하고 있으며 Excel은 이것을 잘 열 수 있습니다.

그러나 데이터에는 계층이 있으며, 검토자가 평평한 목록이 아닌 트리를 볼 수 있습니다. 즉, 데이터를 열에서 제시하는 대신

foo    foo1
foo    foo2
foo    foo3
bar    bar1
bar    bar2
...

클릭-expand 트리로 제시하십시오.

foo
    foo1
    foo2
    foo3
bar
    bar1
    bar2
...

Excel의 그룹 기능 (2007 년 "데이터> 개요> 그룹"에서 발견) 은이 프레젠테이션과 잘 어울리 며 피벗 테이블보다 작동하기에 약간 간단합니다.

이 평평한 열 목록 에서이 그룹화 된 목록으로가는 가장 쉬운 방법은 무엇입니까? 이상적으로는 데이터를 텍스트 형식으로 작성하여 Excel이 가져올 때 그룹화를 자동으로 적용 할 수 있습니다. 또는 매크로 또는 템플릿을 적용하는 것과 같은 데이터를 가져온 후 검토자가 적용 할 수있는 적은 수의 단계가 있으면 괜찮을 것입니다.

도움이 되었습니까?

해결책

이미 Perl을 사용하고 있으므로 우수한 CPAN 모듈을 사용하여 Perl에서 Excel 파일을 직접 작성하는 것이 좋습니다. 스프레드 시트 :: WriteExcel 지원이 있습니다 엑셀 윤곽선.

다음과 같이 작동합니다.

     .
     .
     $worksheet->write('A2',  'foo');
     $worksheet->write('B3',  'foo1');
     $worksheet->write('B4',  'foo2');
     $worksheet->write('B5',  'foo3');
     $worksheet->set_row(2,  undef, undef, 0, 1, 1);
     $worksheet->set_row(3,  undef, undef, 0, 2);
     $worksheet->set_row(4,  undef, undef, 0, 2);
     $worksheet->set_row(5,  undef, undef, 0, 2);
     .
     .

다른 팁

  1. 필터링하려는 목록에서 열 헤더를 포함한 모든 행을 선택하십시오.

    Showtip 범위의 왼쪽 상단 셀을 클릭 한 다음 오른쪽 하단 셀로 드래그합니다.

  2. 데이터 메뉴에서 필터를 가리킨 다음 고급 필터를 클릭하십시오.
  3. 고급 필터 대화 상자에서 목록 필터를 클릭하십시오.
  4. 고유 한 레코드 만 확인란을 선택한 다음 확인을 클릭하십시오.

    필터링 된 목록이 표시되고 중복 행이 숨겨져 있습니다.

  5. 편집 메뉴에서 사무실 클립 보드를 클릭하십시오.

    클립 보드 작업 창이 표시됩니다.

  6. 필터링 된 목록이 여전히 선택되어 있는지 확인한 다음 복사 버튼을 클릭하십시오.

    필터링 된 목록은 경계 윤곽선으로 강조 표시되며 선택은 클립 보드 상단에 항목으로 나타납니다.

  7. 데이터 메뉴에서 필터를 가리킨 다음 모두 표시를 클릭하십시오.

    원래 목록은 다시 제공됩니다.

  8. 삭제 키를 누릅니다.

    원래 목록이 삭제됩니다.

  9. 클립 보드에서 필터링 된 목록 항목을 클릭하십시오.

    필터링 된 목록은 원래 목록과 동일한 위치에 나타납니다.

최근 버전의 Excel (2003은 여기에서 사용하는 것)은 XML 형식 XLSX를 사용할 수 있습니다. XLSX 파일은 XML 파일의 zip입니다. 원하는 설정과 함께 Excel에서 열리는 파일을 만들려면 다음을 시도하십시오. 먼저 원하는 그룹으로 템플릿 파일을 만듭니다. XLSX로 저장하십시오. 표준 zip 소프트웨어를 사용하여 파일을 압축 해제하십시오. 내부에 무엇이 있는지 살펴보십시오. 그룹화와 함께 작업하지는 않았지만 스프레드 시트의 모든 명령이 XML 형식으로 제공되므로 그룹화가 설정된 위치를 파악해야합니다. 그런 다음 XML을 적절히 변경하고 재 ZIPPING을 수행하는 문제입니다. 약간의 노력이지만이 방법을 사용하여 미리 그룹화 된 파일을 프로그래밍 방식으로 만들 수 있습니다. Perl 라이브러리가 특별히이를 위해 특별히 준비 될 수 있습니다.

CSV 파일도 생성하기가 매우 쉽습니다. OpenOffice를 사용하면 물건을 구문 분석하는 방법을 선택할 수 있지만 Excel은 Comma-Delimited Column (어떤 종류의 견적없이) 및 CRLF 구분 행을 제외합니다.

A1,A2,A3
B1,B2,B3

등.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top