Heim >Backend-Entwicklung >C++ >Wie schreibe ich Arrays von Objekten effizient in Excel-Bereiche?
Array in Excel-Bereich schreiben
Bei diesem Problem stößt der Benutzer auf ein Problem, wenn er versucht, ein Array von Objekten in einen Excel-Bereich zu schreiben. Der Code wird fast ausgeführt, aber jede Zelle wird mit dem Wert des ersten Elements im Array gefüllt.
Nach einer Untersuchung stellte der Benutzer fest, dass der umgekehrte Vorgang (Einlesen von Werten aus dem Arbeitsblatt in ein Array) einwandfrei funktioniert. Aus irgendeinem Grund verhält sich das Schreiben in den Bereich jedoch anders.
Um dieses Problem zu lösen, schlug ein erfahrener Benutzer eine Methode vor, die die Datentabelle in ein Array konvertiert und das Array dann in einen Bereich auf dem Arbeitsblatt schreibt. Der Benutzer kann die Variable für die oberste Zeile ändern, um die gewünschte Startzeile des Arrays anzugeben.
Hier ist der bereitgestellte Code:
<code class="language-c#">object[,] arr = new object[dt.Rows.Count, dt.Columns.Count]; for (int r = 0; r < dt.Rows.Count; r++) { for (int c = 0; c < dt.Columns.Count; c++) { arr[r, c] = dt.Rows[r][c]; } } worksheet.get_Range("A" + topRow, "Z" + (topRow + dt.Rows.Count -1)).Value2 = arr;</code>
Diese Methode ermöglicht das effiziente Schreiben großer Arrays in Excel, ohne dass ein iteratives Schreiben Zelle für Zelle erforderlich ist.
Das obige ist der detaillierte Inhalt vonWie schreibe ich Arrays von Objekten effizient in Excel-Bereiche?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!