2012-01-08 2 views
0

Excel 문서를 만들려면 Open XML SDK를 사용하고 있습니다. 시간을 절약하기 위해 기존 문서부터 시작하여 필요한 변경 만 수행합니다.Excel Open XML에서 기존 범위 삭제

특정 셀을 찾으려면 기존 문서에 여러 범위가 정의되어 있어야합니다. 그러나 끝나면 그 범위를 제거하고 싶습니다.

이미 범위가있는 Excel 문서에서 범위를 제거 할 수있는 방법을 찾을 수 없습니다. 모든 팁, 제안 또는 링크?

답변

0

범위는 workbook 요소 아래 정의 된 이름으로 저장됩니다. 워크 시트에서 지정한 이름을 기반으로 정의 된 이름 요소를 찾아서 그런 식으로 삭제해야합니다.

public void DeleteRange(WorkbooPart workbookPart, string definedNameToDelete) 
{ 
    workbookPart.Workbook.DefinedNames.Descendants<DefinedName>().First(x => x.Name == definedNameToDelete).Remove(); 
} 

이것은 수행해야 할 작업에 대한 간단한 설명입니다. 분명히 DefinedNames 요소가 존재하지 않거나 삭제하려는 정의 된 이름이 이미 삭제되었지만 올바른 방향으로 가리키면 오류 검사가 필요할 수 있습니다.

0

명명 된 범위는 통합 문서에 정의되어 있습니다. API를보고 거기서 찾으십시오. 또는 MSDN을 확인하십시오.

또한 Templater을 살펴보십시오. 어쩌면 이미 필요한 것을 할 수도 있습니다. Disclamer : 나는 저자입니다.