Question

Je l'ai cherché et j'ai trouvé le lien C # EPPlus OpenXML count lignes

int iRowCount = currentWorksheet.Dimension.End.Row - currentWorksheet.Dimension.Start.Row;

Mais cela donne une valeur de 4721 comme compte.Il donne le nombre de lignes entier, comment puis-je obtenir le nombre de lignes de lignes qui ont une valeur.Quelque chose comme UsedRange.

Était-ce utile?

La solution

Vous pouvez obtenir le décompte par workBook.Worksheets.Count

Autres conseils

La réponse réelle pour renvoyer le nombre de lignes et de colonnes de la plage utilisée (la dimension) d'une feuille est ...

int iColCnt = Worksheet.Dimension.End.Column
int iRowCnt = Worksheet.Dimension.End.Row

Mais vous devez tester si Worksheet.Dimension est nul car pour les nouvelles feuilles de calcul ou les feuilles de calcul vides, la propriété Dimension sera nulle.

Les cellules vides d'une feuille de calcul peuvent toujours contenir une mise en forme, ce qui les rend comptées dans la feuille Dimension:

Les cellules vides peuvent être effacées en suivant les étapes suivantes: http://office.microsoft.com/en-au/excel-help/locate-and-reset-the-last-cell-on-a-worksheet-HA010218871.aspx

J'ai écrit cette fonction pour obtenir la dernière ligne contenant du texte:

int GetLastUsedRow(ExcelWorksheet sheet) {
    var row = sheet.Dimension.End.Row;
    while(row >= 1) {
        var range = sheet.Cells[row, 1, row, sheet.Dimension.End.Column];
        if(range.Any(c => !string.IsNullOrEmpty(c.Text))) {
            break;
        }
        row--;
    }
    return row;
}

Il existe un moyen d'obtenir les cellules qui n'ont aucune valeur en utilisant la méthode Where.Nous pouvons l'utiliser pour trouver la toute dernière cellule (et sa ligne dans ce cas) d'une feuille de calcul, ou d'une plage.

int lastRow = sheet.Cells.Where(cell => !cell.Value.ToString().Equals("")).Last().End.Row;

À propos de la méthode Where: https://msdn.microsoft.com/en-us/library/bb534803 (v= vs.110) .aspx? cs-save-lang= 1 &cs-lang= csharp # code-snippet-1

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top