一部の Excel データ (日付、数値、実行前の形式がわからないテキストの混合) の書式設定された値を一連の行として読み取り、すべての空白セルを破棄する必要があります。
入力列で自動調整を行うため、理論的には列の幅が十分になり、これらのセルの表示値が #### になることはありませんが、自動調整は出力データに影響を与えないようです。
int rowCount = allCells.Rows.Count;
int colCount = allCells.Columns.Count;
List<List<string>> nonBlankValues = new List<List<string>>();
//to stop values coming out as series of #### due to column width, resize columns
foreach (Excel.Range col in allCells.Columns)
{
col.AutoFit();
}
for (int i = 0; i < rowCount; i++)
{
List<string> row = new List<string>();
for (int j = 0; j < colCount; j++)
{
Excel.Range cellVal = (Excel.Range)allCells.Cells[i + 1, j + 1]; //Excel ranges are 1 indexed not 0 indexed
string cellText = cellVal.Text.ToString();
if (cellText != "")
{
row.Add(cellText);
}
}
if (row.Count > 0)
{
nonBlankValues.Add(row);
}
}