0
ここでコードはリストボックス(employeebox)の名前を取得し、そのシートの行全体を削除します。これは動作し、エラーはありません。私の問題は、チェックする必要がある19種類のシートがありますが、このコードで一度に1つしかチェックできません。 "Excel.Worksheet xlWorkSheet =(Excel.Worksheet)xlWorkBook .Worksheets [2]; "Deleteボタンをクリックすると、すべてのシートをチェックする方法はありますか?誰の助けにも大変感謝しています。Excelで複数のシートを検索するC#
private void delete_Click(object sender, EventArgs e)
{
//create excel
Excel.Application xlexcel = new Excel.Application();
Excel.Workbook xlWorkBook = xlexcel.Workbooks.Open(@"C:\\SAMPLE.xlsx");
Excel.Worksheet xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets[2];
//search within excel
Excel.Range usedRanage = xlWorkSheet.UsedRange;
foreach (Excel.Range row in usedRanage)
{
//grab name once selected in box
if (employeeBox.SelectedItem.Equals(row.Value))
{
row.EntireRow.Delete(Excel.XlDeleteShiftDirection.xlShiftUp);
MessageBox.Show("Employee Deleted.");
}
}
xlexcel.DisplayAlerts = false;
xlWorkBook.SaveAs("C:\\SAMPLE.xlsx", Excel.XlFileFormat.xlWorkbookDefault, Type.Missing,
Type.Missing, false, false, Excel.XlSaveAsAccessMode.xlNoChange,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
xlWorkBook.Close();
xlexcel.Quit();
releaseObject(xlexcel);
releaseObject(xlWorkBook);
releaseObject(xlWorkSheet);
}
は、シートにシートから行くの何が問題になっているのですか? –
こんにちは私はちょうど楽しいコーダーです...ワークブックの既存のシートをループする必要があります。foreach(workBook.WorksheetsのExcel.Worksheetシート) – JohnG
@DangerZone - あまりにも多くのコード。 –