
엑셀에서 데이터 유효성 검사는 사용자가 워크시트에 유효한 데이터만 입력하도록 보장합니다. 양식을 설계하거나 데이터를 수집하거나 재무 모델을 구축할 때 데이터 유효성 검사는 구조를 유지하고 사용자 오류를 최소화하는 데 도움을 줍니다. 이 게시물에서는 C#을 사용하여 엑셀에서 데이터 유효성 검사를 프로그래밍 방식으로 적용하는 방법을 보여드리겠습니다.
이 기사에서는 다음 주제를 다룹니다:
- C# 엑셀 데이터 유효성 검사 라이브러리
- Excel에서 C#을 사용하여 드롭다운 목록을 만드는 방법
- Excel에서 C#을 사용하여 정수 입력을 제한하는 방법
- 엑셀에서 C#을 사용한 날짜 범위 유효성 검사
- 엑셀에서 수식 기반 데이터 유효성 검사
- Excel에서 잘못된 데이터를 오류 경고로 처리하기
- 무료 리소스
C# 엑셀 데이터 유효성 검사 라이브러리
데이터 유효성 검사는 사용자가 Excel 스프레드시트에 유효하고 예상된 입력을 입력하도록 보장합니다. 우리는 Aspose.Cells for .NET API를 사용하여 Excel에 다양한 유형의 데이터 유효성 검사를 추가할 것입니다. 이 API는 드롭다운 목록, 숫자 범위, 날짜 제한 및 사용자 지정 수식과 같은 규칙을 정의하는 강력하고 유연한 접근 방식을 제공하며, Microsoft Excel이 필요하지 않습니다.
.NET 프로젝트에 NuGet 패키지를 통해 Aspose.Cells를 설치하십시오:
PM> Install-Package Aspose.Cells
그 다음 관련 네임스페이스를 가져옵니다:
using Aspose.Cells;
Excel에서 C#을 사용하여 드롭다운 목록 유효성 검사 만들기
사용자가 미리 정의된 옵션 집합에 대한 입력을 제한할 수 있도록 Excel에서 드롭다운 목록 유효성 검사를 생성할 수 있습니다. 이는 일관된 값을 보장하며, 특히 양식이나 템플릿에서 유용합니다.
Excel에서 C#을 사용하여 드롭다운 목록을 만드는 단계를 따르십시오:
- 새로운
Workbook
객체를 생성하세요. - 첫 번째
worksheet
에 인덱스를 사용하여 접근합니다. - 대상
CellArea
를 유효성 검사를 위해 정의하십시오. - 워크시트의 유효성 검사 컬렉션에 액세스합니다.
Add()
메서드를 사용하여 새 유효성을 추가하십시오.- 유효성 검사 유형을
ValidationType.List
로 설정하십시오. Formula1
속성을 사용하여 드롭다운 옵션을 정의합니다(쉼표로 구분).AddArea()
메서드를 사용하여 셀 영역을 유효성 검사에 추가합니다.- 워크북을 저장하여 검증된 Excel 파일을 생성하세요.
여기 이러한 단계를 구현한 C# 코드 예제가 있습니다:
// 새로운 Excel 통합 문서를 만드세요
var workbook = new Workbook();
// 워크북에서 첫 번째 워크시트를 엽니다.
var sheet = workbook.Worksheets[0];
// 유효성을 검사하기 위한 대상 셀 영역을 정의합니다 (이 경우 A1).
var area = new CellArea
{
StartRow = 0, // Row index starts from 0 (Row 1)
EndRow = 0, // Apply to a single row
StartColumn = 0, // Column index starts from 0 (Column A)
EndColumn = 0 // Apply to a single column
};
// 워크시트의 유효성 검사 컬렉션에 액세스합니다.
var validations = sheet.Validations;
// 지정된 셀 영역에 대한 새로운 유효성 검증 항목을 추가하십시오.
int index = validations.Add(area);
var validation = validations[index];
// 유효성 검사 유형을 드롭다운 목록으로 설정합니다.
validation.Type = ValidationType.List;
// 허용된 목록 항목 정의(쉼표로 구분된 값)
validation.Formula1 = "Red,Green,Blue";
// 셀을 선택했을 때 표시되는 입력 메시지를 설정하세요.
validation.InputMessage = "Select a color from the list.";
// 유효하지 않은 데이터가 입력된 경우 표시되는 오류 메시지를 설정하십시오.
validation.ErrorMessage = "Only Red, Green, or Blue are allowed.";
// 오류 메시지 표시 활성화
validation.ShowError = true;
// 정의된 영역을 검증에 적용하십시오.
validation.AddArea(area);
// 지정된 파일 경로에 워크북을 저장합니다.
workbook.Save("dropdown-validation.xlsx");

Excel에서 C#을 사용하여 드롭다운 목록 유효성 검사 만들기
C#를 사용하여 Excel에서 정수만 허용하기
정수 유효성 검사는 사용자가 Excel에 유효한 정수 값만 입력하도록 보장하며, 이는 소수나 텍스트가 허용되지 않는 수량 필드, 나이 입력 또는 예산 시트에 적합합니다.
셀에서 1과 100 사이의 숫자만 입력하도록 제한하고 싶다고 가정해 보겠습니다. 이 규칙이 없으면 사용자가 150이나 abc와 같은 잘못된 입력을 우연히 입력할 수 있어 스프레드시트에서 계산 오류나 논리 문제를 일으킬 수 있습니다.
Aspose.Cells for .NET을 사용하면 C#에서 이 유효성 검사 규칙을 프로그래밍 방식으로 적용할 수 있으며, Excel에서 수동으로 구성할 필요가 없습니다.
다음 코드 스니펫은 사용자가 허용된 값만 입력하도록 제한하는 방법을 보여줍니다:
using Aspose.Cells;
// 새 Excel 통합 문서를 만드십시오.
var workbook = new Workbook();
// 워크북의 첫 번째 워크시트를 엽니다.
var sheet = workbook.Worksheets[0];
// 대상 셀 영역을 정의합니다 — B2 (1행, 1열)
var area = new CellArea
{
StartRow = 1,
EndRow = 1,
StartColumn = 1,
EndColumn = 1
};
// 워크시트의 유효성 검사 컬렉션에 액세스합니다.
var validations = sheet.Validations;
// 새로운 검증을 추가하고 그 인덱스를 가져오세요.
int index = validations.Add(area);
// 검증 객체를 인덱스를 사용하여 가져옵니다.
var validation = validations[index];
// 유효성 검사 유형을 WholeNumber (정수만 허용)으로 설정하세요.
validation.Type = ValidationType.WholeNumber;
// 연산자를 'Between'으로 설정하세요.
validation.Operator = OperatorType.Between;
// 유효 범위 정의: 1에서 100까지
validation.Formula1 = "1";
validation.Formula2 = "100";
// 유효하지 않은 데이터가 입력될 때 나타나는 오류 메시지를 설정하십시오.
validation.ErrorMessage = "Enter a number between 1 and 100.";
// 유효성 검사가 실패할 때 오류 알림 표시 활성화
validation.ShowError = true;
// (옵션: 이전에 Add(area)를 사용하지 않는 경우) 유효성 검사에 영역을 명시적으로 추가하세요.
validation.AddArea(area);
// 파일에 통합 문서를 저장하십시오.
workbook.Save("numbers-validation.xlsx");

Excel에서 C#을 사용하여 정수로 제한하기
Excel에서 C#을 사용하여 날짜 범위 유효성 검사 적용하기
날짜 검증은 사용자가 유효한 날짜만 입력하도록 보장하는 데 도움을 줍니다. 이는 계획 도구, 출석 기록, 예약 시트 및 특정 범위 내의 날짜가 필요한 모든 시나리오에서 유용합니다.
예를 들어, 프로젝트 일정 템플릿을 만들고 있고 사용자가 2024년 내에만 날짜를 입력하도록 제한하고 싶다고 상상해 보십시오. 사용자가 이 범위를 벗어난 날짜(예: 2023년 또는 2025년)를 입력할 수 있도록 허용하면 수식이 깨지거나 일관되지 않은 레코드가 생성될 수 있습니다.
Aspose.Cells for .NET은 특정 셀에 날짜 유효성을 쉽게 적용할 수 있게 해주므로, 사용자들은 귀하의 기준을 충족하는 날짜만 입력할 수 있습니다.
다음 코드 스니펫은 사용자가 2024년 1월 1일과 2024년 12월 31일 사이의 날짜만 입력할 수 있도록 하는 방법을 보여줍니다. 범위를 벗어난 경우 오류가 발생하여 스프레드시트 전반에 걸쳐 더 깔끔하고 정확한 데이터를 유지하는 데 도움이 됩니다.
using Aspose.Cells;
// 새 Excel 통합 문서를 만듭니다.
var workbook = new Workbook();
// 워크북의 첫 번째 워크시트를 엽니다.
var sheet = workbook.Worksheets[0];
// 유효성 검사를 적용할 셀 영역 정의 — C3 (2행, 2열)
var area = new CellArea
{
StartRow = 2,
EndRow = 2,
StartColumn = 2,
EndColumn = 2
};
// 워크시트의 유효성 검사 컬렉션에 액세스하세요.
var validations = sheet.Validations;
// 새로운 유효성 검사를 추가하고 그 인덱스를 가져옵니다.
int index = validations.Add(area);
// 검증 객체를 가져옵니다.
var validation = validations[index];
// 유효성 검사 유형을 날짜로 설정합니다.
validation.Type = ValidationType.Date;
// 연산자를 '사이(시작일과 종료일)'로 설정합니다.
validation.Operator = OperatorType.Between;
// 유효한 날짜 범위를 지정하십시오: 2024년 1월 1일 ~ 2024년 12월 31일
validation.Formula1 = "2024-01-01";
validation.Formula2 = "2024-12-31";
// 날짜가 범위를 벗어났을 때 표시할 오류 메시지를 설정하십시오.
validation.ErrorMessage = "Date must be within the year 2024.";
// 오류 알림 표시 활성화
validation.ShowError = true;
// 영역을 다시 적용하여 유효성이 올바르게 제한되었는지 확인하십시오.
validation.AddArea(area);
// 지정된 경로에 작업 책을 저장하십시오.
workbook.Save("date-validation.xlsx");
Excel에서 C#을 사용하여 수식 기반 유효성 검사를 사용하십시오.
때때로, 간단한 드롭다운 또는 고정 숫자 범위만으로는 부족합니다. 특히 규칙이 다른 셀의 값에 의존하는 경우에는 더욱 그렇습니다. 수식 기반 검증을 사용하면 Excel 스타일의 수식을 사용하여 사용자 지정 규칙을 정의할 수 있습니다. 이러한 규칙은 다른 셀을 참조하고 입력이 유효한지 동적으로 평가할 수 있습니다. 예를 들어, B1 셀의 값이 항상 A1의 값보다 크도록 확인하고 싶을 수 있습니다. 이는 가격 비교, 점수 시트 또는 날짜 시퀀스에서 흔히 발생하는 시나리오입니다.
Aspose.Cells for .NET은 이 기능을 완전히 지원하며, Excel과 마찬가지로 사용자 정의 수식을 사용하여 유효성 검사를 정의할 수 있습니다.
다음 코드 샘플은 C#을 사용하여 Excel에서 수식 기반 유효성 검사를 적용하는 방법을 보여줍니다.
using Aspose.Cells;
// 새 Excel 통합 문서 만들기
var workbook = new Workbook();
// 워크북에서 첫 번째 워크시트를 엽니다.
var sheet = workbook.Worksheets[0];
// 유효성을 위한 셀 영역 정의 — B1 (행 0, 열 1)
var area = new CellArea
{
StartRow = 0,
EndRow = 0,
StartColumn = 1,
EndColumn = 1
};
// 워크시트 유효성 검사 컬렉션에 액세스합니다.
var validations = sheet.Validations;
// 컬렉션에 새로운 유효성 검사를 추가하고 해당 인덱스를 가져옵니다.
int index = validations.Add(area);
// 인덱스로 유효성 검사 개체를 검색합니다.
var validation = validations[index];
// 유효성 검사 유형을 사용자 지정으로 설정합니다(수식 기반 규칙에 사용됨)
validation.Type = ValidationType.Custom;
// 사용자 정의 수식을 설정하세요: B1은 A1보다 커야 합니다.
validation.Formula1 = "=B1>A1";
// 유효성 검사에 실패했을 때 표시되는 오류 메시지를 정의하십시오.
validation.ErrorMessage = "Value in B1 must be greater than A1.";
// 잘못된 입력에 대한 오류 경고 표시를 활성화하십시오.
validation.ShowError = true;
// 영역을 명시적으로 추가하여 유효성이 검증되도록 합니다.
validation.AddArea(area);
// 지정된 파일 경로에 통합 문서를 저장합니다.
workbook.Save("formula-validation.xlsx");
Excel에서 입력 및 오류 메시지 구성 C# 사용하여
데이터 유효성 검사는 솔루션의 일부분일 뿐입니다. 사용자가 잘못된 데이터를 입력할 때 안내하는 것도 마찬가지로 중요하며, 그 부분에서 사용자 지정 경고 및 메시지가 중요한 역할을 합니다.
Aspose.Cells for .NET은 사용자가 셀을 선택하거나 잘못된 데이터를 입력할 때 나타나는 유용한 입력 메시지와 오류 알림을 설정할 수 있게 해줍니다. 이러한 메시지는 사용자 경험을 개선하고 혼란을 줄이며 Excel 템플릿을 더욱 전문적으로 만듭니다.
예를 들어, 사용자가 셀을 클릭할 때 툴팁을 표시할 수 있습니다.
`1부터 100까지의 값만 허용됩니다.”
그리고 그들이 잘못된 값을 입력하면 Excel은 다음과 같은 대화 상자를 표시할 수 있습니다:
`유효하지 않은 입력: 1과 100 사이의 숫자를 입력해 주세요.”
Excel은 잘못된 입력에 대해 사용자의 응답을 어떻게 맞춤 설정할지 선택하여 사용자가 완전히 차단되는지(Stop
), 경고와 함께 진행할 수 있도록 허용하는지(Warning
), 또는 단순히 정보 메시지를 표시하는지(Information
) 사용자 정의할 수 있습니다.
이 단계를 따라 C#를 사용하여 유효성 경고를 구성하세요:
- 유효성 검사 규칙을 설정한 후, 사용자가 셀을 선택할 때 도움말 텍스트를 표시하도록
InputTitle
및InputMessage
를 설정합니다. ErrorTitle
와ErrorMessage
를 정의하여 유효성 검사 실패 시 무엇이 잘못되었는지 설명합니다.AlertStyle
를 선택하세요 — 옵션에는Stop
,Warning
, 및Information
이 포함됩니다.ShowError
를true
로 설정하여 유효성 검사 알림을 활성화합니다.- 워크북을 저장하세요.
이 알림은 다른 사람들이 자주 사용하거나 재사용할 수 있도록 템플릿을 만들 때 특히 스프레드시트를 더 직관적이고 사용자 친화적으로 만들어 줍니다.
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
// 유효성 검사 영역 설정 — 셀 C1에 적용
var area = new CellArea
{
StartRow = 0,
EndRow = 0,
StartColumn = 2, // Column C = 2
EndColumn = 2
};
// 유효성 검사를 추가하세요.
int index = sheet.Validations.Add(area);
var validation = sheet.Validations[index];
validation.Type = ValidationType.Custom;
// 이 수식은 항상 FALSE로 평가됩니다.
validation.Formula1 = "=FALSE";
// 입력 및 오류 메시지를 설정하세요.
validation.InputTitle = "Input Restricted";
validation.InputMessage = "Try entering anything to see the validation.";
validation.ErrorTitle = "Invalid Input";
validation.ErrorMessage = "You triggered this validation error successfully!";
validation.AlertStyle = ValidationAlertType.Stop;
validation.ShowError = true;
validation.ShowInput = true;
// 영역에 대한 유효성 검사를 적용하십시오.
validation.AddArea(area);
// 유효성이 검사된 작업簿을 저장하십시오.
workbook.Save("D:\\Files\\validated_with_alerts.xlsx");
그들은 경고를 통해 사용성을 향상시키고 사용자가 무엇을 입력해야 하는지 명확하게 안내합니다.

엑셀에서 C#을 사용하여 입력 및 오류 메시지 구성하기
무료로 사용해 보세요
Get a free temporary license to test the full capabilities of Aspose.Cells for .NET without any feature limits.
무료 리소스
Excel 자동화 및 검증에 대해 이러한 리소스를 통해 더 알아보세요:
결론
이 기사에서는 C#과 Aspose.Cells for .NET을 사용하여 Excel에서 데이터 유효성을 검사하는 방법을 보여주었습니다. 드롭다운에서 사용자 정의 공식에 이르기까지 Excel에 의존하지 않고도 지능적이고 오류 없는 스프레드시트를 구축할 수 있습니다.
질문이나 피드백이 있으시면, 저희 free support forum에 자유롭게 게시해 주세요. 도와드리게 되어 기쁩니다!