2017-03-02 1 views
2

Je souhaite sélectionner une plage comprise entre la première et la dernière cellule de la ligne ou de la colonne. Dans VBA, le code reste comme ci-dessous en utilisant xlDown ou xlToRight.Dernière cellule en ligne et colonne dans Epplus - C#

Range(Selection, Selection.End(xlDown)).Select 
Range(Selection, Selection.End(xlToRight)).Select 

Comment pourrais-je le faire de la même façon en C# en utilisant Epplus? Je vais commencer à partir de la cellule B139 et je dois aller à la dernière ligne et colonne

Répondre

2

Une chose importante à savoir sur l'objet Cells dans une feuille de calcul dans EPPlus est qu'il contient uniquement des références à la cellule qui ont des données ajoutées. Donc, avec un peu de LINQ vous pouvez obtenir l'adresse de chaque "Row" comme ceci:

var lastRowCell1 = worksheet.Cells.Last(c => c.Start.Row == 1); 

var lastRowCell2 = worksheet.Cells.Last(c => c.Start.Row == 2); 

var lastColCell1 = worksheet.Cells.Last(c => c.Start.Column == 1); 

var lastColCell2 = worksheet.Cells.Last(c => c.Start.Column == 2); 
+0

Existe-t-il un moyen d'utiliser linq comme ça avec la librairie Interlop? – hellyale