ich Daten versuche von C# zu exportieren den folgenden Code in Excel:Index war Fehler außerhalb des Bereichs, während Export in Excel
enter worksheet = workbook.ActiveSheet;
worksheet.Name = "ExportedFromDatGrid";
//Loop through each row and read value from each column.
for (int i = 0; i < dataGridView1.Rows.Count + 1; i++)
{
worksheet.Cells[1, i] = dataGridView1.Columns[i - 1].HeaderText;
}
for (int i = 0; i < dataGridView1.Columns.Count; i++)
{
for (int j = 0; j < dataGridView1.Columns.Count - 1; j++)
{
// Excel index starts from 1,1. As first Row would have the Column headers,
// adding a condition check.
worksheet.Cells[i + 2, j + 1] = dataGridView1.Rows[i].Cells[j].Value.ToString();
}
}
ich die folgende Fehlermeldung erhalten:
Index was out of range.Must be non negative and less than the size of the collection. Parameter name: index.
UPDATE Ich löste das Problem, indem ich diese für Aussage änderte:
for (int i = -1; i < DataGridView1.Columns.Count; i++)
Wie wäre es 'dataGridView1.Rows.Count' stattdessen für' dataGridView1.Rows.Count + 1' –
Nun ja, Ihre Grenzen für 'i' sind sehr zweifelhaft. Es wäre hilfreich, wenn Sie den Code sorgfältiger formatieren würden, zeigen Sie, wo der Fehler liegt, und teilen Sie uns mit, was Sie beim Debuggen beobachtet haben. –