Voici un autre :
=INDIRECT("A"&MAX(ARRAYFORMULA(IF(A:A<>"",LIGNE(A:A),""))))
Avec l'équation finale étant celle-ci :
=NB.JOURS360(A2,INDIRECT("A"&MAX(ARRAYFORMULA(IF(A:A<>"",LIGNE(A:A),"")))))
Les autres équations ici fonctionnent, mais j'aime celle-ci car elle facilite l'obtention du numéro de ligne, ce que je trouve que j'ai besoin de faire plus souvent. Juste le numéro de ligne serait comme ceci :
=MAX(ARRAYFORMULA(IF(A:A<>"",LIGNE(A:A),"")))
À l'origine, j'ai essayé de trouver juste cela pour résoudre un problème de feuille de calcul, mais je n'ai pas pu trouver quelque chose d'utile qui donnait simplement le numéro de ligne de la dernière entrée, donc j'espère que cela sera utile pour quelqu'un.
Aussi, cela a l'avantage supplémentaire qu'il fonctionne pour n'importe quel type de données dans n'importe quel ordre, et vous pouvez avoir des lignes vides entre les lignes avec du contenu, et il ne compte pas les cellules avec des formules qui évaluent à "". Il peut également gérer des valeurs répétées. Dans l'ensemble, c'est très similaire à l'équation qui utilise MAX((G:G<>"")*LIGNE(G:G)) ici, mais rend un peu plus facile l'extraction du numéro de ligne si c'est ce que vous cherchez.
Alternativement, si vous voulez mettre un script sur votre feuille, vous pouvez vous simplifier la tâche si vous prévoyez de le faire souvent. Voici ce script :
function lastRow(sheet,column) {
var ss = SpreadsheetApp.getActiveSpreadsheet();
if (column == null) {
if (sheet != null) {
var sheet = ss.getSheetByName(sheet);
} else {
var sheet = ss.getActiveSheet();
}
return sheet.getLastRow();
} else {
var sheet = ss.getSheetByName(sheet);
var lastRow = sheet.getLastRow();
var array = sheet.getRange(column + 1 + ':' + column + lastRow).getValues();
for (i=0;i
`
Ici, vous pouvez simplement taper ce qui suit si vous voulez la dernière ligne sur la même feuille que celle que vous éditez actuellement :
=DERNIÈRELIGNE()
ou si vous voulez la dernière ligne d'une colonne particulière de cette feuille, ou d'une colonne particulière d'une autre feuille, vous pouvez faire ce qui suit :
=DERNIÈRELIGNE("Feuille1","A")
Et pour la dernière ligne d'une feuille particulière en général :
=DERNIÈRELIGNE("Feuille1")
Ensuite, pour obtenir les données réelles, vous pouvez utiliser la fonction INDIRECT :
=INDIRECT("A"&DERNIÈRELIGNE())
ou vous pouvez modifier le script ci-dessus aux deux dernières lignes de retour (les deux dernières car vous devriez mettre à la fois la feuille et la colonne pour obtenir la valeur réelle d'une colonne), et remplacer la variable par ce qui suit :
return sheet.getRange(column + final).getValue();
et
return sheet.getRange(column + lastRow).getValue();
Un avantage de ce script est que vous pouvez choisir si vous voulez inclure des équations qui évaluent à "". Si aucun argument n'est ajouté, les équations évaluant à "" seront comptées, mais si vous spécifiez une feuille et une colonne, elles seront désormais comptées. De plus, il y a beaucoup de flexibilité si vous êtes prêt à utiliser des variations du script.
Probablement excessif, mais tout est possible.
`
2 votes
Question similaire : stackoverflow.com/questions/4169914/…