2012-01-08 13 views
0

私はOpen XML SDKを使用してExcelドキュメントを作成しています。時間を節約するために、私は既存の文書から始め、必要な変更を加えます。Excelのオープン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をご覧ください。多分あなたはすでにあなたが必要とするものをします。私は著者です。