3

私は2つのExcelファイルをインポートするプログラムを使用しており、それらのExcelファイルには異なる列名があります..そのため、ユーザーが間違ったExcelファイルを(他の列名で)インポートする可能性があり、私の問題はOledbDataAdapter を使用して Excel からデータを読み取っているため、各列の名前を指定する必要があるため、ユーザーが間違ったファイルをインポートすると、プログラムは動作を停止します (プログラムがデータを取得するための適切な列を見つけられないため)。

わかりましたので、私の質問は、特定の Excel シートに列が存在するかどうかを確認する方法はありますか? したがって、ユーザーがインポートしたファイルに列が存在しない場合は、何かを行うことができます...

ここに私のコードの一部があります:

OleDbCommand command1 = new OleDbCommand(
    @"SELECT DISTINCT serie FROM [Sheet1$] 
      WHERE serie =@MercEnInventario AND serie IS NOT NULL", connection);
command1.Parameters.Add(new OleDbParameter("MercEnInventario", MercInv));
string serieN = Convert.ToString(command1.ExecuteScalar());
readerOle = command1.ExecuteReader();
readerOle.Close();

ユーザーがインポートした Excel ファイルに列名「serie」が存在しないため、文字列「serieN」に値を指定しようとすると、OleDbException が発生しました。

あなたが私を助けることができれば、私はとても感謝しています:)

4

2 に答える 2