ワークシートをワークブックで埋めているため、ワークブックに空のシートが表示される原因を特定できません。C#のブックから空のワークシートを削除する方法
- は私が空のシート または空のシートが作成されている理由を特定し
- を削除する必要があります。
これについての助けがあれば助かります。 MS相互運用機能を使用して
excelApp.DisplayAlerts = false;
workBook = (Microsoft.Office.Interop.Excel._Workbook)(excelApp.Workbooks.Add(Microsoft.Office.Interop.Excel.XlWBATemplate.xlWBATWorksheet));
//DataTable to Excel
foreach(DataTable table in dataSet.Tables)
{
workSheet = (Microsoft.Office.Interop.Excel.Worksheet)excelApp.Worksheets.Add(Missing.Value, Missing.Value, Missing.Value, Missing.Value);
workSheet.Name = table.TableName;
for (int i = 0; i < table.Columns.Count; i++)
{
workSheet.Cells[1, (i + 1)] = table.Columns[i].ColumnName;
}
for (int i = 0; i < table.Rows.Count; i++)
{
for (int k = 0; k < table.Columns.Count; k++)
{
workSheet.Cells[(i + 2), (k + 1)] = table.Rows[i][k];
}
}
workBook.Worksheets.Add(workSheet);
}
//Trying to delete empty sheets
foreach (Microsoft.Office.Interop.Excel.Worksheet sheet in workBook.Sheets)
{
excelApp.DisplayAlerts = false;
if (sheet.Cells.MaxRow == -1 && sheet.Cells.MaxColumn == -1)
{
sheet.Delete();
}
}
ない可能性私は空のセルを削除したくないだけで、いくつかの警告ボックス – jose
を入れて空のセルを削除するには、私は、ブックからすべての空のワークシートを削除したいです。 –
ループの先頭と末尾に '.Worksheets.Add'を追加しているので、 – Slai