空(空白または値を含まない)のセルを削除したい場合があります。私はExcel.Interopを使ってこれをしようとしています。私はこれについてどうやって行くのかが完全にはわかりませんが、私はこれを試しました。excelファイルからusedRange内の空のセルを見つけて削除するC#
Excel.Application xlApp;
Excel.Workbook xlWorkBook;
Excel.Worksheet xlWorkSheet;
Excel.Range range;
string str;
xlApp = new Excel.Application();
xlWorkBook = xlApp.Workbooks.Open(@"C:\Users\Craig\Desktop\testCell.xlsx", 0, true, 5, "", "", true, Microsoft.Office.Interop.Excel.XlPlatform.xlWindows, "\t", false, false, 0, true, 1, 0);
xlWorkSheet = (Excel.Worksheet)xlWorkBook.Worksheets.get_Item(1);
range = xlWorkSheet.UsedRange;
if ((((Excel.Range)xlWorkSheet.Cells[range]).Value2.ToString() != String.Empty))
{
Console.WriteLine("No empty cells found");
}
else
Console.WriteLine("Found empty cells");
実行時間はThe parameter is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))
ですが、私のif文ではあります。私の問題に関するアイデアか、これについて正しい方法を考えているのですか?私は私の一時ファイルに行き、それらを削除し、プラス私は私のbinフォルダの内容を削除した
空の行と列を削除するだけでなく、空の単一セルをすべて削除してもよろしいですか?私は単一の空のセルを削除することは、スプレッドシートの構造を台無しにすると思います。 – JohnG
私はライン: '(((Excel.Range)xlWorkSheet.Cells [range])、Value2.ToString()!= String.Empty))'とは思えません。セルの範囲があり、WHOLEの範囲が空の文字列と等しいかどうかを確認しようとしていますか?範囲をループして空のセルを見つける必要があります。 – JohnG