Comment trouver la valeur de la dernière cellule d'une ligne Excel


1

J'ai une feuille de calcul avec une liste délimitée de répertoires et de fichiers en lignes avec un nombre variable de colonnes. Je souhaite simplement que la valeur du nom de fichier (par exemple, 123-E-001.xls, située dans la dernière cellule de chaque ligne) soit répertoriée dans la colonne A.

Réponses:


1

Vous pouvez utiliser une formule Index / Match le long de ces lignes:

=INDEX(B1:ZZ1,MATCH("zzzz",B1:ZZ1,1))

Le Match("zzzz"...)trouvera la dernière cellule avec du texte dans la plage et passera son numéro à la fonction Index.

Ce sera plus rapide que l'approche Lookup.


Je me demande s'il serait peut-être plus rapide d'utiliser le COL de xllastcell plutôt que de le faire paraître de bout en bout? Ou pensez-vous qu'il pourrait être intelligent et arrêter de toute façon?
Lefty

@Lefty, Ceci est une formule de feuille de calcul, pas VBA. Match () avec un 1 comme dernier paramètre trouvera la dernière cellule remplie presque immédiatement, car elle ne recherche pas cellule après cellule. C'est certainement plus rapide que de passer des choses à VBA et vice-versa.
Teylyn

Désolé, vous avez raison, je pensais à VBA pour une raison quelconque. Pardonne-moi. J'aime ce match, je ne l'ai jamais utilisé mais je devrai enquêter.
Lefty

0

Vous pouvez utiliser la fonction RECHERCHE. Si vous placez la formule suivante dans une cellule A1, la dernière valeur non vide entre B1 et XX1 sera trouvée. Remplacez XX1 par une colonne devant se trouver à droite de la dernière colonne de données.

=LOOKUP(2,1/(B1:XX1<>""),B1:XX1)

Notez que vous ne pouvez avoir autant de lignes que de colonnes. Par conséquent, si vous avez beaucoup de noms de fichiers, vous devez utiliser des colonnes au lieu de lignes. La formule suivante fait la même chose pour les données d'une colonne:

=INDEX(A:A, COUNTA(A:A), 1)

CountA ne fonctionnera que s'il n'y a pas de cellules vides. De plus, FWIW, Index peut être utilisé sur des lignes, pas seulement sur des colonnes.
Teylyn le

LOOKUP peut également être utilisé pour une colonne de valeurs, par exemple =LOOKUP(2,1/(A1:A100<>""),A1:A100).... ou imiter INDEX / MATCH de =LOOKUP("zzzz",A1:A100)
teylyn
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.