こんにちは
Windows7+VS2008+Office2007でExcelへの出力プログラムを作成しています。
Excelアクセス用には Microsoft.Office.Interop.Excel名前空間を利用しています。
既存のxlsxファイルにはワークシートがいくつか存在しているのですが、
ワークシート内が空っぽの状態(データやオブジェクトが全くない状態)であればワークシートのDelete()ができるのですが、
空っぽでない状態ではワークシートのDelete()ができないのです。
テスト用コードは以下のようなものです。
foreach (Worksheet workSheet in workBook.Worksheets)
{
if (workBook.Worksheets.Count == 1)
break;
// WorkSheet内のすべてのオブジェクトを削除する
workSheet.Cells.Clear(); ←↓ データが邪魔なら消してしまえばよいだろうと思って入れた記述です
workSheet.Cells.Delete(XlDeleteShiftDirection.xlShiftToLeft);
workSheet.Delete();
}
不備な点があれば教えていただきたいのです。
よろしくお願いいたします。