Excel 스프레드시트에서 정보를 필터링하는 것은 중요한 기능입니다. 관련 없는 데이터는 숨기고 특정 기준에 맞는 데이터만 표시할 수 있습니다. 데이터 필터링이 도움이 될 수 있는 시나리오가 있을 수 있습니다. 예를 들어, 조직은 판매 전략을 분석하고 개선하기 위해 판매 보고서에서 실적이 저조한 제품을 필터링할 수 있습니다. 이 기사에서는 C++를 사용하여 Excel 파일에서 자동 필터를 추가하거나 제거하는 방법을 배웁니다.

Excel 파일에서 자동 필터 추가 및 제거를 위한 C++ API

Excel 파일에서 AutoFilter를 추가 및 제거하기 위해 Aspose.Cells for C++ API를 사용합니다. Microsoft Excel을 설치하지 않고도 Excel 파일을 만들고 읽고 수정할 수 있는 기본 C++ 라이브러리입니다. NuGet을 통해 API를 설치하거나 다운로드 섹션에서 직접 다운로드할 수 있습니다.

PM> Install-Package Aspose.Cells.Cpp

C++를 사용하여 Excel 파일에 자동 필터 적용

셀 범위에 자동 필터를 적용할 수 있습니다. 자동 필터를 사용하면 지정된 셀 범위에서 값을 정렬하고 필터링할 수 있습니다. 다음은 Excel 파일에 자동 필터를 추가하는 단계입니다.

다음 샘플 코드는 C++를 사용하여 Excel 파일의 셀 범위에 AutoFilter를 적용하는 방법을 보여줍니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book3.xlsx")));

// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// 셀 범위를 지정하여 자동 필터 만들기
worksheet->GetIAutoFilter()->SetRange(new String("A1:B1"));

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("AutoFilter_out.xlsx")));
샘플 코드에서 생성된 출력 파일의 이미지

샘플 코드에서 생성된 출력 파일의 이미지

C++를 사용하여 Excel 파일에 날짜 자동 필터 추가

Excel 파일에는 날짜를 기반으로 한 데이터가 포함될 수 있습니다. 다양한 날짜를 기준으로 데이터를 필터링하고 분석해야 하는 시나리오에 직면할 수 있습니다. 따라서 날짜 필터는 이러한 시나리오에서 도움이 될 것입니다. 다음은 Excel 파일에 날짜 자동 필터를 추가하는 단계입니다.

다음 샘플 코드는 C++를 사용하여 Excel 파일에 날짜 자동 필터를 추가하는 방법을 보여줍니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));

// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// AddDateFilter 함수를 호출하여 필터 적용
worksheet->GetIAutoFilter()->AddDateFilter(0, DateTimeGroupingType_Month, 2018, 1, 1, 0, 0, 0);

// 새로 고침 함수를 호출하여 워크시트 업데이트
worksheet->GetIAutoFilter()->Refresh();

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("DateFilter_out.xlsx")));

C++를 사용하여 Excel 파일에 동적 날짜 자동 필터 추가

연도에 관계없는 월이나 현재 월 이전 달과 같이 보다 일반적인 날짜 필터가 필요한 경우가 있을 수 있습니다. 이와 같은 시나리오의 경우 동적 자동 필터를 사용하여 데이터를 필터링할 수 있습니다. 다음은 동적 날짜 자동 필터를 사용하여 데이터를 필터링하는 단계입니다.

다음 샘플 코드는 C++를 사용하여 Excel 파일에 동적 날짜 자동 필터를 추가하는 방법을 보여줍니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("Book4.xlsx")));

// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// DynamicFilter 함수를 호출하여 필터 적용
worksheet->GetIAutoFilter()->DynamicFilter(0, DynamicFilterType_Februray);

// 새로 고침 함수를 호출하여 워크시트 업데이트
worksheet->GetIAutoFilter()->Refresh();

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("DynamicDateAutoFilter_out.xlsx")));

C++를 사용하여 Excel 파일에 사용자 지정 자동 필터 적용

사용자 정의 AutoFilter를 적용하려는 경우 C++ API용 Aspose.Cells에서 처리했습니다. API를 사용하면 특정 요구 사항에 따라 Excel 파일에 사용자 지정 자동 필터를 적용할 수 있습니다. 다음은 Excel 파일에 사용자 지정 자동 필터를 추가하는 단계입니다.

다음 샘플 코드는 C++를 사용하여 Excel 파일에 사용자 지정 자동 필터를 추가하는 방법을 보여줍니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("sampleCountryNames.xlsx")));

// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// 필터를 적용하려면 Custom 함수를 호출하세요.
worksheet->GetIAutoFilter()->Custom(0, FilterOperatorType_Equal, new String("Brazil"));

// 새로 고침 함수를 호출하여 워크시트 업데이트
worksheet->GetIAutoFilter()->Refresh();

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("CustomFilter_out.xlsx")));

Excel 파일에서 자동 필터 제거

이전 섹션에서는 Excel 파일에 다양한 자동 필터를 추가하는 방법을 배웠습니다. AutoFilter를 추가하는 것 외에도 Aspose.Cells for C++ API를 사용하여 제거할 수도 있습니다. 다음은 Excel 파일에서 자동 필터를 제거하는 단계입니다.

다음 샘플 코드는 C++를 사용하여 Excel 파일에서 AutoFilter를 제거하는 방법을 보여줍니다.

// 소스 디렉토리 경로.
StringPtr srcDir = new String("SourceDirectory\\");

// 출력 디렉토리 경로.
StringPtr outDir = new String("OutputDirectory\\");

// 소스 Excel 파일 로드
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook(srcDir->StringAppend(new String("SampleAutoFilter.xlsx")));

// Excel 파일의 첫 번째 워크시트에 액세스
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);

// 자동 필터 제거
worksheet->RemoveAutoFilter();

// 엑셀 파일 저장
workbook->Save(outDir->StringAppend(new String("RemoveAutoFilter_out.xlsx")));

무료 라이선스 받기

무료 임시 라이선스를 요청하면 평가 제한 없이 API를 사용해 볼 수 있습니다.

결론

이 문서에서는 C++를 사용하여 Excel 파일에서 자동 필터를 추가 및 제거하는 방법을 배웠습니다. 특히 기본, 날짜, 동적 날짜 및 사용자 지정 자동 필터를 추가하는 방법을 배웠습니다. 또한 Aspose.Cells for C++ API를 사용하여 AutoFilter를 제거하는 방법도 보았습니다. API는 Excel 파일 작업을 위한 많은 추가 기능을 제공합니다. 공식 문서에서 API를 자세히 살펴볼 수 있습니다. 질문이 있는 경우 무료 지원 포럼에서 언제든지 문의하십시오.

또한보십시오