„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Wie rufe ich Excel -Blattnamen in ihrer ursprünglichen Reihenfolge mit OLEDB ab?

Wie rufe ich Excel -Blattnamen in ihrer ursprünglichen Reihenfolge mit OLEDB ab?

Gepostet am 2025-02-26
Durchsuche:740

How to Retrieve Excel Sheet Names in Their Original Order Using OLEDB?

rufen Excel -Blattnamen in Blattreihenfolge mit OLEDB

die Aufgabe, Blattnamen aus einem Excel -Arbeitsbuch abzurufen, in der Programmierung gewöhnlich aufgenommen. Das Erhalten dieser Namen in der Reihenfolge, die sie in der Tabelle definiert sind, kann bei Verwendung von OLEDB. GetOledbSchematable () liefert keine Blattnamen in der gewünschten Reihenfolge an. Dies behindert die Fähigkeit des Benutzers, das Abrufen von Daten basierend auf Blattnamen oder Index anzugeben, und führt zu Verwirrung.

Lösung unter Verwendung von Nested Looping

Ein Ansatz beinhaltet die Wiederholung der Blätter nacheinander die Iteration der Blätter nacheinander die Iteration nacheinander nach, sequentiell wiederholt Von Blatt 0 bis die Anzahl der Blätter minus 1. Dies stellt die Erhaltung der Blattbestellung sicher.

Implementierung mit Verwendung OLEDB

Wenn die Verwendung der Office Interop -Klassen nicht möglich ist, ist eine Lösung mit OLEDB verfügbar:

///

/// Ruft Excel -Blattnamen aus einem Excel -Arbeitsbuch ab. /// /// Die Excel -Datei. /// String [] private String [] getExcelSheetNames (String excelfile) { OLEDBCONNECTION OBJCONN = NULL; System.Data.Datatable Dt = NULL; versuchen { // Verbindungszeichenfolge String connstring = "Provider = microsoft.jet.oledb.4.0;" "Data Source =" Excelfile "; erweiterte Eigenschaften = Excel 8.0;"; // Verbindung erstellen und die Verbindung zur Datenbank öffnen objconn = new oledbConnection (connstring); objconn.open (); // Datentabelle mit Schema -Richtlinie erhalten dt = objconn.getOledbSchematable (OLEDBSCHEMAGUID.TABLE, NULL); if (dt == null) null zurückkehren; // Initialisieren Sie String [], um Blattnamen zu speichern. String [] excelsheets = new String [dt.rows.count]; int i = 0; // Blattnamen zum Zeichenfolgenarray hinzufügen. foreach (Datarow -Zeile in dt.rows) { excelsheets [i] = row ["table_name"]. toString (); ich ; } Return Excelsheets; } fangen (Ausnahme ex) { null zurückkehren; } Endlich { // Verbindungs- und Datentabelle reinigen if (objconn! = null) { objconn.close (); objconn.disponse (); } if (dt! = null) { dt.disponse (); } } } Dieser Code stellt eine Verbindung zur Excel -Datei her, ruft die Datentabelle mit Blattnamen ab und füllt eine Zeichenfolge [] mit diesen Namen in der Reihenfolge, die sie in der Tabelle erscheinen.

Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3