je cherche en vain une formule sous excel

Le
Jean
Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Richard Harker
Le #23234971
Pour ?a il vous faudra un peu de VBA qui pourra v?rifier une colonne, trouver la derni?re cellule et ensuite pourra se servir du chiffre pour l'utiliser autrepart. Sinon je ne connais aucune formule qui peut faire cela.
MichD
Le #23235041
Bonjour,


Validation Matricielle : Maj + Ctrl + Enter
=INDEX(Rg;MAX(SI(ESTERREUR(Rg);LIGNE(Rg);SI(Rg="";0;LIGNE(Rg)))))

La dernière cellule peut contenir du numérique ou du texte.

Si ta version est antérieure à Excel 2007, la plage nommée de cellules "Rg" ne peut
pas représenter une colonne entière. Le maximum est la colonne entière moins une cellule.




MichD
--------------------------------------------
"Jean" a écrit dans le message de groupe de discussion : imkgq3$4na$

Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne pleine de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean
Jacquouille
Le #23235061
Bonjour Jean

Pas certain du tout que l'on soit obligé de passer par VBA.
je viens de consulter mes archives et notamment "les dernières" de AV, un de
mes maitres à penser)

où je pose que c'est de la colonne A dont il est question.
La dernière cellule remplie --> à valider (hélàs) en matricielle, càd
touches CTRL+Maj+Enter.
=MAX(si(A1:A100<>"";ligne(A1:A100)))
Donnera la ligne occupée par la dernière cel.
Il te faudra certainement adapter la longueur de la plage (A1:A100)
Bonne chance

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jean" a écrit dans le message de groupe de discussion :
imkgq3$4na$

Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean
Michel__D
Le #23235091
Bonjour,

Jean a écrit :
Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean



Dans la mesure ou toute les cellules de la plage situées en colonne "A" contiennent une valeur :

=INDIRECT("A" & NBVAL(A:A))
MichD
Le #23235171
Bonjour Jacquouille,

Comme le demandeur veut extraire la dernière valeur d'une d'une cellule d'une colonne,
il faudrait modifier ta formule comme suit :

Validation matricielle : Ctrl + Maj + Enter
=INDIRECT("A" &MAX(SI(Rg<>"";LIGNE(Rg))))

Rg est une plage nommée avec les restrictions de mon message précédent.
En supposant que la colonne A est celle en cause.

Si ta plage est importante, tu peux utiliser cette fonction personnalisée en VBA
Tu copies la fonction dans un module standard et dans la cellule où tu veux afficher
le résultat, tu inscris : =LastVal(A:A) Remplace A:A par la colonne de ton choix.

'----------------------------------------
Function LastVal(Rg As Range)
On Error Resume Next
With Worksheets(Rg.Parent.Name)
LastVal = .Range(Rg.Address).Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Value
On Error GoTo 0
End With
End Function
'----------------------------------------


MichD
--------------------------------------------
"Jacquouille" a écrit dans le message de groupe de discussion : 4d8ddea5$0$14249$

Bonjour Jean

Pas certain du tout que l'on soit obligé de passer par VBA.
je viens de consulter mes archives et notamment "les dernières" de AV, un de
mes maitres à penser)

où je pose que c'est de la colonne A dont il est question.
La dernière cellule remplie --> à valider (hélàs) en matricielle, càd
touches CTRL+Maj+Enter.
=MAX(si(A1:A100<>"";ligne(A1:A100)))
Donnera la ligne occupée par la dernière cel.
Il te faudra certainement adapter la longueur de la plage (A1:A100)
Bonne chance

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jean" a écrit dans le message de groupe de discussion :
imkgq3$4na$

Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean
Jacquouille
Le #23235341
C'est ma fois bien vrai.
ma formule ne renvoie que le num de la ligne, alors que la tienne renvoie le
contenu de la cellule.
Merci pour cette précision qui, je l'espère, n'échappera pas à l'attention
du demandeur;
Bon WE

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"MichD" a écrit dans le message de groupe de discussion :
imkp0p$nio$

Bonjour Jacquouille,

Comme le demandeur veut extraire la dernière valeur d'une d'une cellule
d'une colonne,
il faudrait modifier ta formule comme suit :

Validation matricielle : Ctrl + Maj + Enter
=INDIRECT("A" &MAX(SI(Rg<>"";LIGNE(Rg))))

Rg est une plage nommée avec les restrictions de mon message précédent.
En supposant que la colonne A est celle en cause.

Si ta plage est importante, tu peux utiliser cette fonction personnalisée en
VBA
Tu copies la fonction dans un module standard et dans la cellule où tu veux
afficher
le résultat, tu inscris : =LastVal(A:A) Remplace A:A par la colonne de
ton choix.

'----------------------------------------
Function LastVal(Rg As Range)
On Error Resume Next
With Worksheets(Rg.Parent.Name)
LastVal = .Range(Rg.Address).Find(What:="*", _
LookIn:=xlValues, _
SearchOrder:=xlByRows, _
SearchDirection:=xlPrevious).Value
On Error GoTo 0
End With
End Function
'----------------------------------------


MichD
--------------------------------------------
"Jacquouille" a écrit dans le message de groupe de discussion :
4d8ddea5$0$14249$

Bonjour Jean

Pas certain du tout que l'on soit obligé de passer par VBA.
je viens de consulter mes archives et notamment "les dernières" de AV, un de
mes maitres à penser)

où je pose que c'est de la colonne A dont il est question.
La dernière cellule remplie --> à valider (hélàs) en matricielle, càd
touches CTRL+Maj+Enter.
=MAX(si(A1:A100<>"";ligne(A1:A100)))
Donnera la ligne occupée par la dernière cel.
Il te faudra certainement adapter la longueur de la plage (A1:A100)
Bonne chance

Jacquouille

" Le vin est au repas ce que le parfum est à la femme."
"Jean" a écrit dans le message de groupe de discussion :
imkgq3$4na$

Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean
bcar
Le #23238781
Le 26/03/2011 11:55, Jean a écrit :
Bonjour,
je souhaite systématiquement remplir une cellule avec la dernière valeur
d'une colonne plein de données.
cette colonne s'agrandit tous les mois avec une valeur supplémentaire.
j'ai besoin pour un calcul automatique de reprendre automatiquement toujours
la dernière valeur de la colonne.
Je viens de chercher depuis une heure et je ne trouve pas comment faire.
Pouvez-vous me donner une idée svp?
Jean





Pour des raisons de performances les formules matricielles sur les
colonnes complètes pouvant être un peu lentes, j'utilise cette petite
fonction perso

' -------------------------------------------------------------------
' -- A partir d'une cellule, execute la fonction End avec xldown et
' -- retourne la ligne
' -- [IN] r : cellule de départ
' -- [RETURN] dernière cellule
' -------------------------------------------------------------------
Public Function LastRowDown(ByVal r As Range) As Long
Application.Volatile
LastRowDown = r.End(xlDown).Row
End Function
Publicité
Poster une réponse
Anonyme