! 제품 버전을 정확하게 입력해 주세요.
제품 버전이 정확하게 기재되어 있지 않은 경우,
최신 버전을 기준으로 안내 드리므로
더욱 빠르고 명확한 안내를 위해
제품 버전을 정확하게 입력해 주세요!

필터 내용만 엑셀로 저장하는 방법 > Q&A | 토론

본문 바로가기

Spread.NET

Q&A | 토론

WinForms윈폼 필터 내용만 엑셀로 저장하는 방법

페이지 정보

작성자 엘엠소프트 작성일 2023-12-04 09:11 조회 93회 댓글 0건
제품 버전 : 16.0.20221.1
컨트롤 이름 : filter

본문

필터 적용 후, 화면에 보이는 내용만 엑셀로 저장하는 방법이 있나요?
  • 페이스북으로 공유
  • 트위터로  공유
  • 링크 복사
  • 카카오톡으로 보내기

댓글목록

등록된 댓글이 없습니다.

1 답변

WinForms윈폼 Re: 필터 내용만 엑셀로 저장하는 방법

추천0 이 글을 추천하셨습니다 비추천0

페이지 정보

작성자 MESCIUS써니 작성일 2023-12-05 08:40 댓글 0건

본문

엘엠소프트 님, 안녕하세요.
메시어스입니다.

필터가 적용된 채로 Excel로 내보내기 하시려면 다음과 같이 SaveExcel 메서드의 옵션으로 ExcelSaveFlags.SaveAsFiltered를 넣어주시면 됩니다. 이 경우 적용한 필터 조건이 유지된 상태로 Excel로 저장됩니다.
fpSpread1.SaveExcel("Excel.xlsx", FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat | FarPoint.Excel.ExcelSaveFlags.SaveAsFiltered);

혹은 필터 조건에 해당하는 행만 Excel로 내보내고, 필터 조건에 부합하지 않는 행은 Excel로 내보내지 않고 싶으신 것일까요?
만약 그렇다면 필터된 결과를 다른 임의의 스프레드에 복사/붙여넣기 한 후, 임의의 스프레드를 엑셀로 내보내기 함으로써 원하시는 결과를 얻으실 수 있습니다.

이때, 필터된 시트를 복사하는 ClipboardCopy 메서드의 옵션으로 ClipboardCopyOptions.AsStringSkipHidden를 적용하여, 숨겨진 셀은 복사하지 않고 필터 조건에 부합하는 셀만 복사할 수 있습니다.

아래 샘플 코드를 개발 시 참고 부탁드립니다.
private void button1_Click(object sender, EventArgs e)
{
    FarPoint.Win.Spread.FpSpread tempSpread = new FarPoint.Win.Spread.FpSpread(FarPoint.Win.Spread.LegacyBehaviors.None);
    tempSpread.Sheets.Count = 1;

    fpSpread1.Sheets[0].ClearSelection();
    fpSpread1.Sheets[0].AddSelection(0, 0, fpSpread1.Sheets[0].RowCount, fpSpread1.Sheets[0].ColumnCount);
    fpSpread1.Sheets[0].ClipboardCopy(FarPoint.Win.Spread.ClipboardCopyOptions.AsStringSkipHidden);
    tempSpread.Sheets[0].ClipboardPaste();
    tempSpread.Sheets[0].ClearSelection();
    fpSpread1.Sheets[0].ClearSelection();

    tempSpread.SaveExcel("Filtered.xlsx", FarPoint.Excel.ExcelSaveFlags.UseOOXMLFormat | FarPoint.Excel.ExcelSaveFlags.SaveAsViewed);
}
 
감사합니다.
메시어스 드림

댓글목록

등록된 댓글이 없습니다.

메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
메시어스 홈페이지를 통해 제품에 대해서 더 자세히 알아 보세요!
홈페이지 바로가기
이메일 : sales-kor@mescius.com | 전화 : 1670-0583 | 경기도 과천시 과천대로 7길 33, 디테크타워 B동 1107호 메시어스(주) 대표자 : 허경명 | 사업자등록번호 : 123-84-00981 | 통신판매업신고번호 : 2013-경기안양-00331 ⓒ 2024 MESCIUS inc. All rights reserved.