2017-03-08 10 views
0

Ich benutze Excel Interop in C#, um aus einer Excel-Tabelle zu lesen. Mein Excel-Tabelle hat immer die gleiche Struktur:Suche nach dem letzten Wert in einer bestimmten Spalte

 
    | A | B | C | D | 
1 |  |  |  |  | 
2 | Text | Text | Text | Text | 
3 |  |  |  |  | 
4 | Text | Text | Text | Text | 
5 | Text | Text | Text | Text | 
6 | Text | Text | Text | Text | 
...| ... | ... | ... | ... | 
75 | Text | Text | Text | Text | 
76 |  |  |  |  | 
77 | Text |  |  |  |  
78 | Text |  |  |  |  
79 | Text |  |  |  |  

Was ich jetzt bekommen will, ist, dass Anfang und Ende Reihe meiner erforderlichen Daten ein. Im obigen Beispiel wäre es "4" für die Startzeile und "75" für die Endzeile.

Die Startzeile ist kein Problem: ich bekomme es mit Range.Find("text").Row weil ich den ersten Eintrag meiner Daten kenne.

Das Problem ist Zeile 75 bekommen, weil die Funktion .End immer mir die letzte Zelle des Blattes gibt. Das wäre 79 in meinem Beispiel.

Ich könnte Schleife Zeile 4 bis 76 und überprüfen, ob die Zelle leer ist, aber das scheint nicht sehr intelligent und effizient.

Kann man zum Beispiel nach der letzten nicht leeren Zelle in Spalte D fragen? Dies würde mein Problem lösen.

Hoffnung war nicht zu verwirrend ...

Beste Grüße und Dank im Voraus,

Julian

+1

übrigens wo laden Sie Ihre Excel-Tabelle? –

Antwort

0

„Ist es möglich, zum Beispiel für die letzte nicht leere Zelle in der Spalte D fragen "Das würde mein Problem lösen."

Vielleicht ist diese Lösung gut für Sie. Es findet das erste leere Element, aber ich denke, Sie könnten es bearbeiten: first blank row in excel

Verwandte Themen