DataReader を使用して、データを Excel シートのセルに書き込みます。セルが書き込み権限を持つまでは問題ありません。ただし、あるケースでは、1 つのセルのみが読み取り専用で、残りのセルは書き込み可能です。
例: 10 * 10 セル、最初のセルのみが読み取り専用です。したがって、このセルを残して残りのセルに書き込む必要があります。しかし、データリーダーを使用すると、行全体を一度に書き込むことができます..では、C#を使用してこれを達成するにはどうすればよいですか?
Team Leader (required) , , , , , , , , ,
, , , , , , , , , ,
, , , , , , , , , ,
, , , , , , , , , ,
, , , , , , , , , ,
したがって、最初のセルは datareader によって書き込まれるべきではありません。これを行うのを手伝ってください
if (reader.HasRows)
{
minRow = 0;
minCol = 0;
// Process each result in the result set
while (reader.Read())
{
// Create an array big enough to hold the column values
object[] values = new object[reader.FieldCount];
// Add the array to the ArrayList
rowList.Add(values);
// Get the column values into the array
reader.GetValues(values);
int iValueIndex = 0;
// If the Reading Format is by ColumnByColumn
if (CurTaskNode.ReadFormat == "ColumnbyColumn")
{
minCol = 0;
// minRow = 0;
for (int iCol = 0; iCol < CurTaskNode.HeaderData.Length; iCol++)
{
// Checking whether the Header data exists or not
if (CurTaskNode.HeaderData[minCol] != "")
{
// Assigning the Value from reader to the particular cell in excel sheet
excelworksheet.Cells[CurTaskNode.DATA_MIN_ROW + minRow, CurTaskNode.DATA_MIN_COL + minCol] = values[iValueIndex];
iValueIndex++;
}
minCol++;
}
minRow++;
}
}
}
ありがとう、ラムちゃん