1

Excelタブ全体を空白/クリアしようとしています。しかし、何も機能していないようです

私は次のアプローチを試しました:

OleDbConnection connection = new OleDbConnection(connectionString);
OleDbCommand command = new OleDbCommand("Select * FROM [Sheet1$]", connection);
OleDbCommand count = new OleDbCommand("Select count(*) FROM [Sheet1$]", connection);

DataSet dataset = new DataSet();
OleDbDataAdapter adapter = new OleDbDataAdapter();
adapter.SelectCommand = new OleDbCommand("Select * from [Sheet1$]", connection);
adapter.Fill(dataset);

for (int i = 0; i < dataset.Tables[0].Rows.Count; i++)
{
    DataRow dtRow = dataset.Tables[0].Rows[i];
    foreach (DataColumn col in dataset.Tables[0].Columns)
    {
        if(col.DataType == typeof(string))
        dataset.Tables[0].Rows[i][col] = "";
   }

}
dataset.Tables[0].AcceptChanges();
adapter.Update(dataset.Tables[0]);
4

2 に答える 2

-1

私はExcelファイルを操作すると思います、NPOIはあなたにとってより良いオプションです。

オープンソースで使いやすいです。

以前はOLEDBを使用してExcelファイルを読み取りましたが、データを更新するために使用しようとはしませんでした。それを使用する必要がある場合は、Excelファイルがreadonyでないことを確認してください。

于 2012-11-26T08:35:43.110 に答える